다음을 통해 공유


ProcessModule.BaseAddress 속성

정의

모듈이 로드된 메모리 주소를 가져옵니다.

public:
 property IntPtr BaseAddress { IntPtr get(); };
public IntPtr BaseAddress { get; }
member this.BaseAddress : nativeint
Public ReadOnly Property BaseAddress As IntPtr

속성 값

IntPtr

nativeint

모듈의 로드 주소입니다.

예제

다음 코드 예제에는 Notepad.exe 애플리케이션에 대 한 새 프로세스를 만듭니다. 이 코드는 ProcessModuleCollection 클래스를 반복하여 컬렉션의 각 모듈에 대한 ProcessModule 개체를 가져옵니다. ModuleNameBaseAddress 속성은 각 모듈이 로드된 모듈 이름과 메모리 주소를 표시하는 데 사용됩니다.

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

적용 대상