.NET Framework Class Library
ProcessModule..::.FileName Property

Gets the full path to the module.

Namespace:  System.Diagnostics
Assembly:  System (in System.dll)
Syntax

Visual Basic (Declaration)
Public ReadOnly Property FileName As String
Visual Basic (Usage)
Dim instance As ProcessModule
Dim value As String

value = instance.FileName
C#
public string FileName { get; }
Visual C++
public:
property String^ FileName {
    String^ get ();
}
JScript
public function get FileName () : String

Property Value

Type: System..::.String
The fully qualified path that defines the location of the module.
Remarks

If the file name is longer than the maximum number of characters allowed, the file name is truncated.

Examples

The following code example creates a new process for the Notepad.exe application. The code iterates through the ProcessModuleCollection class to obtain a ProcessModule object for each module in the collection. The ModuleName and FileName properties are used to display the module name and the full path information for each module.

Visual Basic
Dim myProcess As New Process()
' Get the process start information of notepad.
Dim myProcessStartInfo As New ProcessStartInfo("notepad.exe")
' Assign 'StartInfo' of notepad to 'StartInfo' of 'myProcess' object.
myProcess.StartInfo = myProcessStartInfo
' Create a notepad.
myProcess.Start()
System.Threading.Thread.Sleep(1000)
Dim myProcessModule As ProcessModule
' Get all the modules associated with 'myProcess'.
Dim myProcessModuleCollection As ProcessModuleCollection = myProcess.Modules
Console.WriteLine("File names of the modules associated " + _
                        "with 'notepad' are:")
' Display the 'FileName' of each of the modules.
Dim i As Integer
For i = 0 To myProcessModuleCollection.Count - 1
   myProcessModule = myProcessModuleCollection(i)
   Console.WriteLine(myProcessModule.ModuleName + " : " + myProcessModule.FileName)
Next i
' Get the main module associated with 'myProcess'.
myProcessModule = myProcess.MainModule
' Display the 'FileName' of the main module.
Console.WriteLine("The process's main module's FileName is: " + myProcessModule.FileName)
myProcess.CloseMainWindow()
C#
Process myProcess = new Process();
// Get the process start information of notepad.
ProcessStartInfo  myProcessStartInfo = new ProcessStartInfo("notepad.exe");
// Assign 'StartInfo' of notepad to 'StartInfo' of 'myProcess' object.
myProcess.StartInfo = myProcessStartInfo;
// Create a notepad.
myProcess.Start();
System.Threading.Thread.Sleep(1000);
ProcessModule myProcessModule;
// Get all the modules associated with 'myProcess'.
ProcessModuleCollection myProcessModuleCollection = myProcess.Modules;
Console.WriteLine("File names of the modules associated "
   +"with 'notepad' are:");
// Display the 'FileName' of each of the modules.
for( int i = 0;i < myProcessModuleCollection.Count; i++)
{
   myProcessModule = myProcessModuleCollection[i];
   Console.WriteLine(myProcessModule.ModuleName+" : "
      +myProcessModule.FileName);
}
// Get the main module associated with 'myProcess'.
myProcessModule = myProcess.MainModule;
// Display the 'FileName' of the main module.
Console.WriteLine("The process's main module's FileName is: "
   +myProcessModule.FileName);
myProcess.CloseMainWindow();
Visual C++
Process^ myProcess = gcnew Process;

// Get the process start information of notepad.
ProcessStartInfo^ myProcessStartInfo = gcnew ProcessStartInfo( "notepad.exe" );

// Assign 'StartInfo' of notepad to 'StartInfo' of 'myProcess' object.
myProcess->StartInfo = myProcessStartInfo;

// Create a notepad.
myProcess->Start();
System::Threading::Thread::Sleep( 1000 );
ProcessModule^ myProcessModule;

// Get all the modules associated with 'myProcess'.
ProcessModuleCollection^ myProcessModuleCollection = myProcess->Modules;
Console::WriteLine( "File names of the modules associated with 'notepad' are:" );

// Display the 'FileName' of each of the modules.
for ( int i = 0; i < myProcessModuleCollection->Count; i++ )
{
   myProcessModule = myProcessModuleCollection[ i ];
   Console::WriteLine( "{0} : {1}", myProcessModule->ModuleName,  +myProcessModule->FileName );
}
myProcessModule = myProcess->MainModule;

// Display the 'FileName' of the main module.
Console::WriteLine( "The process's main module's FileName is: {0}", myProcessModule->FileName );
myProcess->CloseMainWindow();
Platforms

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Version Information

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0
See Also

Reference

Tags :


Community Content

Shaggie
File Name truncation
What is "the maximum number of characters allowed"?

Page view tracker