ProcessModule.BaseAddress Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene la dirección de memoria donde se cargó el módulo.
public:
property IntPtr BaseAddress { IntPtr get(); };
public IntPtr BaseAddress { get; }
member this.BaseAddress : nativeint
Public ReadOnly Property BaseAddress As IntPtr
Valor de propiedad
nativeint
La dirección de carga del módulo.
Ejemplos
En el ejemplo de código siguiente se crea un nuevo proceso para la aplicación Notepad.exe. El código itera a través de la clase ProcessModuleCollection para obtener un objeto ProcessModule para cada módulo de la colección. Las ModuleName propiedades y BaseAddress se usan para mostrar el nombre del módulo y la dirección de memoria donde se cargó cada módulo.
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( "Base addresses of the modules associated with 'notepad' are:" );
// Display the 'BaseAddress' of each of the modules.
for ( int i = 0; i < myProcessModuleCollection->Count; i++ )
{
myProcessModule = myProcessModuleCollection[ i ];
Console::WriteLine( "{0} : {1}", myProcessModule->ModuleName, myProcessModule->BaseAddress );
}
myProcessModule = myProcess->MainModule;
// Display the 'BaseAddress' of the main module.
Console::WriteLine( "The process's main module's base address is: {0}", myProcessModule->BaseAddress );
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("Base addresses of the modules associated "
+ "with 'notepad' are:");
// Display the 'BaseAddress' of each of the modules.
for (int i = 0; i < myProcessModuleCollection.Count; i++)
{
myProcessModule = myProcessModuleCollection[i];
Console.WriteLine(myProcessModule.ModuleName + " : "
+ myProcessModule.BaseAddress);
}
// Get the main module associated with 'myProcess'.
myProcessModule = myProcess.MainModule;
// Display the 'BaseAddress' of the main module.
Console.WriteLine("The process's main module's base address is: "
+ myProcessModule.BaseAddress);
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("Base addresses of the modules associated " +
"with 'notepad' are:")
' Display the 'BaseAddress' of each of the modules.
Dim i As Integer
For i = 0 To myProcessModuleCollection.Count - 1
myProcessModule = myProcessModuleCollection(i)
Console.WriteLine(myProcessModule.ModuleName + " : " +
myProcessModule.BaseAddress.ToString())
Next i
' Get the main module associated with 'myProcess'.
myProcessModule = myProcess.MainModule
' Display the 'BaseAddress' of the main module.
Console.WriteLine("The process's main module's base address is: " +
myProcessModule.BaseAddress.ToString())
myProcess.CloseMainWindow()
End Using