PSECURE_MEMORY_CACHE_CALLBACK fungsi panggilan balik (winnt.h)

Fungsi yang ditentukan aplikasi sebelumnya terdaftar dengan fungsi AddSecureMemoryCacheCallback yang dipanggil ketika rentang memori aman dikosongkan atau perlindungannya diubah.

Jenis PSECURE_MEMORY_CACHE_CALLBACK menentukan penunjuk ke fungsi panggilan balik ini. SecureMemoryCacheCallback adalah tempat penampung untuk nama fungsi yang ditentukan aplikasi.

Sintaks

PSECURE_MEMORY_CACHE_CALLBACK PsecureMemoryCacheCallback;

BOOLEAN PsecureMemoryCacheCallback(
  [in] PVOID Addr,
  [in] SIZE_T Range
)
{...}

Parameter

[in] Addr

Alamat awal rentang memori.

[in] Range

Ukuran rentang memori, dalam byte.

Nilai kembali

Nilai yang dikembalikan menunjukkan keberhasilan atau kegagalan fungsi ini.

Jika penelepon telah mengamankan rentang memori yang ditentukan, fungsi ini harus tidak aman memori dan mengembalikan TRUE.

Jika pemanggil belum mengamankan rentang memori yang ditentukan, fungsi ini harus mengembalikan FALSE.

Keterangan

Setelah fungsi panggilan balik terdaftar, fungsi ini dipanggil setelah upaya apa pun untuk membebaskan rentang memori yang ditentukan atau mengubah perlindungannya. Jika aplikasi telah mengamankan bagian mana pun dari rentang memori yang ditentukan, fungsi panggilan balik harus membatalkan semua pemetaan memori yang di-cache aplikasi untuk rentang memori aman, tidak aman dari bagian aman dari rentang memori, dan mengembalikan TRUE. Jika tidak, maka harus mengembalikan FALSE.

Aplikasi ini mengamankan dan tidak mengamankan rentang memori dengan mengirim permintaan ke driver perangkat, yang menggunakan fungsi MmSecureVirtualMemory dan MmUnsecureVirtualMemory untuk benar-benar mengamankan dan tidak aman rentang. Operasi pada jenis memori aman atau terkunci lainnya tidak memicu panggilan balik ini.

Contoh panggilan fungsi yang memicu fungsi panggilan balik termasuk panggilan ke fungsi VirtualFree, VirtualFreeEx, VirtualProtect, VirtualProtectEx, dan UnmapViewOfFile .

Fungsi panggilan balik juga dapat dipicu oleh operasi heap. Dalam hal ini, fungsi tidak boleh melakukan operasi lebih lanjut pada timbunan yang memicu panggilan balik. Ini termasuk memanggil fungsi tumpukan pada timbunan privat atau timbunan default proses, atau memanggil fungsi pustaka standar seperti malloc dan gratis, yang secara implisit menggunakan timbunan default proses.

Untuk membatalkan pendaftaran fungsi panggilan balik, gunakan fungsi RemoveSecureMemoryCacheCallback .

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista dengan SP1 [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2008 [hanya aplikasi desktop]
Target Platform Windows
Header winnt.h (termasuk Windows.h)

Lihat juga

AddSecureMemoryCacheCallback

RemoveSecureMemoryCacheCallback