ProcessModule::FileName Property


Gets the full path to the module.

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

property String^ FileName {
	String^ get();

Property Value

Type: System::String^

The fully qualified path that defines the location of the module.

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

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.

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.
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:s} : {1:s}", 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 );

.NET Framework
Available since 1.1
Return to top