Delen via


Methode IHostMemoryManager::VirtualProtect

Fungeert als een logische wrapper voor de bijbehorende Win32-functie. De Win32-implementatie van VirtualProtect wijzigt de beveiliging voor een regio van vastgelegde pagina's in de virtuele adresruimte van het aanroepende proces.

Syntaxis

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

Parameters

lpAddress
[in] Een verwijzing naar het basisadres van het virtuele geheugen waarvan de beveiligingskenmerken moeten worden gewijzigd.

dwSize
[in] De grootte, in bytes, van het gebied van de geheugenpagina's die moeten worden gewijzigd.

flNewProtect
[in] Het type geheugenbeveiliging dat moet worden toegepast.

pflOldProtect
[uit] Een verwijzing naar de vorige geheugenbeveiligingswaarde.

Retourwaarde

HRESULT Beschrijving
S_OK VirtualProtect is geretourneerd.
HOST_E_CLRNOTAVAILABLE De Common Language Runtime (CLR) is niet geladen in een proces of de CLR bevindt zich in een status waarin beheerde code niet kan worden uitgevoerd of de aanroep kan worden verwerkt.
HOST_E_TIMEOUT Er is een time-out opgetreden voor het gesprek.
HOST_E_NOT_OWNER De beller is niet de eigenaar van het vergrendelingsslot.
HOST_E_ABANDONED Een gebeurtenis is geannuleerd terwijl er een geblokkeerde thread of vezel op wachtte.
E_FAIL Er is een onbekende catastrofale fout opgetreden. Wanneer een methode E_FAIL retourneert, is de CLR niet meer bruikbaar binnen het proces. Volgende aanroepen naar hostingmethoden retourneren HOST_E_CLRNOTAVAILABLE.

Opmerkingen

Deze implementatie van VirtualProtect retourneert een HRESULT-waarde, terwijl de Win32-implementatie een niet-nulwaarde retourneert om succes aan te geven en een nulwaarde om een fout aan te geven. Zie de windows-platformdocumentatie voor meer informatie.

Vereisten

Platforms: Zie Systeemvereisten.

Header: MSCorEE.h

Bibliotheek: Opgenomen als een resource in MSCorEE.dll

.NET Framework versies: beschikbaar sinds 2.0

Zie ook