ProcessModule.ModuleMemorySize 屬性

定義

讀取載入模組所需的記憶體容量。

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

屬性值

模組所佔用的記憶體大小(以位元組為單位)。

範例

以下程式碼範例為 Notepad.exe 應用程式建立一個新的程序。 程式碼會遍歷類別, ProcessModuleCollection 以取得集合中每個模組的 ProcessModule 物件。 ModuleNameModuleMemorySize屬性用來顯示模組名稱及每個模組所需的記憶體容量。

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

備註

ModuleMemorySize 不包含模組運行後所做的任何額外記憶體配置;它只包含靜態程式碼的大小以及模組檔案中的資料。

適用於