IHostMemoryManager::VirtualProtect – metoda
Slouží jako logická obálka pro odpovídající funkci Win32. Implementace VirtualProtect
Win32 změní ochranu v oblasti potvrzených stránek ve virtuálním adresním prostoru volajícího procesu.
Syntaxe
HRESULT VirtualProtect (
[in] void* lpAddress,
[in] SIZE_T dwSize,
[in] DWORD flNewProtect,
[out] DWORD* pflOldProtect
);
Parametry
lpAddress
[v] Ukazatel na základní adresu virtuální paměti, jejíž atributy ochrany mají být změněny.
dwSize
[v] Velikost oblasti paměťových stránek, které se mají změnit, v bajtech.
flNewProtect
[v] Typ ochrany paměti, který se má použít.
pflOldProtect
[out] Ukazatel na předchozí hodnotu ochrany paměti.
Návratová hodnota
HRESULT | Description |
---|---|
S_OK | VirtualProtect úspěšně vráceno. |
HOST_E_CLRNOTAVAILABLE | Modul CLR (Common Language Runtime) nebyl načten do procesu nebo je ve stavu, ve kterém nemůže spustit spravovaný kód nebo úspěšně zpracovat volání. |
HOST_E_TIMEOUT | Časový limit hovoru vypršel. |
HOST_E_NOT_OWNER | Volající zámek nevlastní. |
HOST_E_ABANDONED | Událost byla zrušena, zatímco na ni čekalo blokované vlákno nebo vlákno. |
E_FAIL | Došlo k neznámému závažnému selhání. Když metoda vrátí E_FAIL, clr již není možné v rámci procesu použít. Následná volání metod hostování vrátí HOST_E_CLRNOTAVAILABLE. |
Poznámky
Tato implementace VirtualProtect
vrátí hodnotu HRESULT, zatímco implementace Win32 vrátí nenulovou hodnotu označující úspěch a nulovou hodnotu pro selhání. Další informace najdete v dokumentaci k platformě Windows.
Požadavky
Platformy: Viz Požadavky na systém.
Záhlaví: MSCorEE.h
Knihovny: Zahrnutý jako prostředek v MSCorEE.dll
Verze rozhraní .NET Framework: K dispozici od verze 2.0