Megosztás:


IHostMemoryManager::VirtualProtect metódus

A megfelelő Win32 függvény logikai burkolójaként szolgál. A Win32-implementáció megváltoztatja VirtualProtect a védelmet a lekötött oldalak egy régiójában a hívási folyamat virtuális címterében.

Szintaxis

HRESULT VirtualProtect (  
    [in]  void*   lpAddress,  
    [in]  SIZE_T  dwSize,  
    [in]  DWORD   flNewProtect,  
    [out] DWORD*  pflOldProtect  
);  

Paraméterek

lpAddress
[in] Mutató annak a virtuális memóriának az alapcímére, amelynek védelmi attribútumait módosítani kell.

dwSize
[in] A módosítandó memórialapok régiójának mérete bájtban.

flNewProtect
[in] Az alkalmazandó memóriavédelem típusa.

pflOldProtect
[kifelé] Mutató az előző memóriavédelmi értékre.

Visszatérési érték

HRESULT Description
S_OK VirtualProtect sikeresen visszaadott.
HOST_E_CLRNOTAVAILABLE A közös nyelvi futtatókörnyezet (CLR) nincs betöltve egy folyamatba, vagy a CLR olyan állapotban van, amelyben nem tudja futtatni a felügyelt kódot, vagy nem tudja sikeresen feldolgozni a hívást.
HOST_E_TIMEOUT A hívás túllépte az időkorlátot.
HOST_E_NOT_OWNER A hívó nem rendelkezik a zárral.
HOST_E_ABANDONED Egy esemény megszakadt, miközben egy blokkolt szál vagy szál várakozott rá.
E_FAIL Ismeretlen katasztrofális hiba történt. Amikor egy metódus E_FAIL ad vissza, a CLR már nem használható a folyamaton belül. Az üzemeltetési módszerekre irányuló későbbi hívások HOST_E_CLRNOTAVAILABLE adnak vissza.

Megjegyzések

Ez a VirtualProtect implementáció egy HRESULT értéket ad vissza, míg a Win32-implementáció nem nulla értéket ad vissza a sikeresség jelzéséhez, és nulla értéket a hiba jelzéséhez. További információt a Windows Platform dokumentációjában talál.

Követelmények

Platformok: Lásd: Rendszerkövetelmények.

Fejléc: MSCorEE.h

Könyvtár: Erőforrásként szerepel a MSCorEE.dll

.NET-keretrendszer verziók: 2.0 óta érhető el

Lásd még