Export (0) Print
Expand All

ProcessModule.ModuleMemorySize Property

Gets the amount of memory that is required to load the module.

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

public int ModuleMemorySize { get; }

Property Value

Type: System.Int32
The size, in bytes, of the memory that the module occupies.

ModuleMemorySize does not include any additional memory allocations that the module makes once it is running; it includes only the size of the static code and data in the module file.

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 ModuleMemorySize properties are used to display the module name and the amount of memory needed for each module.


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();


.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Community Additions

ADD
Show:
© 2014 Microsoft