IHostMemoryManager::VirtualProtect (Método)
Actúa como un contenedor lógico para la función correspondiente de Win32. La implementación de Win32 de VirtualProtect cambia la protección en una región de páginas confirmadas en el espacio de dirección virtual del proceso de llamada.
HRESULT VirtualProtect (
[in] void* lpAddress,
[in] SIZE_T dwSize,
[in] DWORD flNewProtect,
[out] DWORD* pflOldProtect
);
Parámetros
lpAddress
[in] Puntero a la dirección base de la memoria virtual cuyos atributos de protección se van a cambiar.dwSize
[in] Tamaño, en bytes, de la región de las páginas de memoria que se va a cambiar.flNewProtect
[in] Tipo de protección de memoria que se debe aplicar.pflOldProtect
[out] Puntero al valor de protección de memoria anterior.
Valor devuelto
HRESULT |
Descripción |
---|---|
S_OK |
VirtualProtect finalizó correctamente. |
HOST_E_CLRNOTAVAILABLE |
Common Language Runtime (CLR) no se ha cargado en un proceso o está en un estado en el que no puede ejecutar el código administrado o procesar la llamada correctamente. |
HOST_E_TIMEOUT |
Se agotó el tiempo de espera de la llamada. |
HOST_E_NOT_OWNER |
El llamador no posee el bloqueo. |
HOST_E_ABANDONED |
Se canceló un evento mientras una fibra o un subproceso bloqueado estaba esperándole. |
E_FAIL |
Se ha producido un error catastrófico desconocido. Si un método devuelve E_FAIL, CLR no se puede seguir utilizando en el proceso. Las llamadas subsiguientes a métodos de hospedaje devuelven HOST_E_CLRNOTAVAILABLE. |
Comentarios
Esta implementación de VirtualProtect devuelve un valor HRESULT, mientras que la implementación de Win32 devuelve un valor distinto de cero para indicar que se ha realizado correctamente, y un valor de cero para indicar un error. Para obtener más información, consulte la documentación sobre la plataforma Windows.
Requisitos
Plataformas: vea Requisitos de sistema de .NET Framework.
Encabezado: MSCorEE.h
Biblioteca: Se incluye como recurso en MsCorEE.dll
Versiones de .NET Framework: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0