Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Dient als logischer Wrapper für die entsprechende Win32-Funktion. Die Win32-Implementíerung von VirtualProtect ändert den Schutz für einen Bereich von Seiten, für die ein Commit ausgeführt wurde, im virtuellen Adressraum des aufrufenden Prozesses.
HRESULT VirtualProtect (
[in] void* lpAddress,
[in] SIZE_T dwSize,
[in] DWORD flNewProtect,
[out] DWORD* pflOldProtect
);
Parameter
lpAddress
[in] Ein Zeiger auf die Basisadresse des virtuellen Speichers, dessen Schutzattribute geändert werden sollen.dwSize
[in] Die Größe des Bereichs von Speicherseiten (in Bytes), der geändert werden soll.flNewProtect
[in] Der Typ des zu übernehmenden Speicherschutzes.pflOldProtect
[out] Ein Zeiger auf den vorherigen Speicherschutzwert.
Rückgabewert
HRESULT |
Beschreibungen |
|---|---|
S_OK |
VirtualProtect erfolgreich zurückgegeben. |
HOST_E_CLRNOTAVAILABLE |
Die Common Language Runtime (CLR) wurde nicht in einen Prozess geladen oder befindet sich in einem Zustand, in dem sie weder verwalteten Code ausführen noch den Aufruf erfolgreich verarbeiten kann. |
HOST_E_TIMEOUT |
Der Aufruf hat das Zeitlimit überschritten. |
HOST_E_NOT_OWNER |
Der Aufrufer ist nicht Besitzer der Sperre. |
HOST_E_ABANDONED |
Ein Ereignis wurde abgebrochen, während ein blockierter Thread oder eine blockierte Fiber auf das Ereignis gewartet hat. |
E_FAIL |
Ein unbekannter, schwerwiegender Fehler ist aufgetreten. Wenn eine Methode E_FAIL zurückgibt, kann die CLR innerhalb des Prozesses nicht mehr verwendet werden. Nachfolgende Aufrufe von Hostmethoden geben HOST_E_CLRNOTAVAILABLE zurück. |
Hinweise
Diese Implementierung von VirtualProtect gibt einen HRESULT-Wert zurück, während die Win32-Implementierung bei Erfolg einen Wert ungleich 0 (null) und bei einem Fehler 0 (null) zurückgibt. Weitere Informationen finden Sie in der Dokumentation zur Windows-Plattform.
Anforderungen
Plattformen: siehe Systemanforderungen für .NET Framework.
Header: MSCorEE.h
Bibliothek: als Ressource in MSCorEE.dll enthalten
.NET Framework-Versionen: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0