Bagikan melalui


Metode IHostMemoryManager::VirtualProtect

Berfungsi sebagai pembungkus logis untuk fungsi Win32 yang sesuai. Implementasi Win32 dari VirtualProtect mengubah perlindungan pada wilayah halaman penerapan di ruang alamat virtual dari proses panggilan.

Sintaks

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

Parameter

lpAddress
[in] Penunjuk ke alamat dasar memori virtual yang atribut perlindungannya akan diubah.

dwSize
[in] Ukuran wilayah halaman memori dalam byte yang akan diubah.

flNewProtect
[in] Jenis perlindungan memori yang akan diterapkan.

pflOldProtect
[out] Penunjuk ke nilai perlindungan memori sebelumnya.

Tampilkan Nilai

HRESULT Deskripsi
S_OK VirtualProtect berhasil dikembalikan.
HOST_E_CLRNOTAVAILABLE Runtime bahasa umum (CLR) belum dimuat ke dalam proses, atau CLR berada dalam status yang tidak dapat menjalankan kode terkelola atau tidak berhasil memproses panggilan.
HOST_E_TIMEOUT Waktu panggilan habis.
HOST_E_NOT_OWNER Pemanggil tidak memiliki kunci.
HOST_E_ABANDONED Peristiwa dibatalkan saat rangkaian atau fiber yang diblokir sedang menunggunya.
E_FAIL Kegagalan katastrofe yang tidak diketahui terjadi. Saat metode menampilkan E_FAIL, CLR tidak lagi dapat digunakan dalam proses. Panggilan berikutnya ke metode hosting menampilkan HOST_E_CLRNOTAVAILABLE.

Keterangan

Implementasi VirtualProtect ini mengembalikan nilai HRESULT, sedangkan implementasi Win32 mengembalikan nilai selain nol untuk menunjukkan keberhasilan dan nilai nol untuk menunjukkan kegagalan. Untuk informasi selengkapnya, lihat dokumentasi Windows Platform.

Persyaratan

Platform: Lihat Persyaratan Sistem.

Header: MSCorEE.h

Pustaka: Disertakan sebagai sumber daya di MSCorEE.dll

Versi .NET Framework: Tersedia mulai dari 2.0

Lihat juga