ProcessModule.ModuleMemorySize Proprietà

Definizione

Ottiene la quantità di memoria necessaria per caricare il modulo.

public:
 property int ModuleMemorySize { int get(); };
public int ModuleMemorySize { get; }
member this.ModuleMemorySize : int
Public ReadOnly Property ModuleMemorySize As Integer

Valore della proprietà

Dimensioni, in byte, della memoria occupata dal modulo.

Esempio

Nell'esempio di codice seguente viene creato un nuovo processo per l'applicazione Notepad.exe. Il codice esegue l'iterazione della classe ProcessModuleCollection per ottenere un oggetto ProcessModule per ogni modulo nella raccolta. Le proprietà ModuleName e ModuleMemorySize vengono usate per visualizzare il nome del modulo e la quantità di memoria necessaria per ogni modulo.

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( "Module memory sizes of the modules associated with 'notepad' are:" );

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

// Display the 'ModuleMemorySize' of the main module.
Console::WriteLine( "The process's main module's ModuleMemorySize is: {0}", myProcessModule->ModuleMemorySize );
myProcess->CloseMainWindow();
using (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("Module memory sizes of the modules associated "
        + "with 'notepad' are:");
    // Display the 'ModuleMemorySize' of each of the modules.
    for (int i = 0; i < myProcessModuleCollection.Count; i++)
    {
        myProcessModule = myProcessModuleCollection[i];
        Console.WriteLine(myProcessModule.ModuleName + " : "
            + myProcessModule.ModuleMemorySize);
    }
    // Get the main module associated with 'myProcess'.
    myProcessModule = myProcess.MainModule;
    // Display the 'ModuleMemorySize' of the main module.
    Console.WriteLine("The process's main module's ModuleMemorySize is: "
        + myProcessModule.ModuleMemorySize);
    myProcess.CloseMainWindow();
}
Using 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("Module memory sizes of the modules associated " +
                      "with 'notepad' are:")
    ' Display the 'ModuleMemorySize' of each of the modules.
    Dim i As Integer
    For i = 0 To myProcessModuleCollection.Count - 1
        myProcessModule = myProcessModuleCollection(i)
        Console.WriteLine(myProcessModule.ModuleName + " : " +
                    myProcessModule.ModuleMemorySize.ToString())
    Next i
    ' Get the main module associated with 'myProcess'.
    myProcessModule = myProcess.MainModule
    ' Display the 'ModuleMemorySize' of the main module.
    Console.WriteLine("The process's main module's ModuleMemorySize is: " +
                         myProcessModule.ModuleMemorySize.ToString())
    myProcess.CloseMainWindow()
End Using

Commenti

ModuleMemorySize non include alcuna allocazione di memoria aggiuntiva da parte del modulo una volta in esecuzione, ma include solo le dimensioni del codice statico e dei dati nel file del modulo.

Si applica a