Bagikan melalui


Fungsi RtlRunOnceExecuteOnce (ntddk.h)

RtlRunOnceExecuteOnce melakukan inisialisasi satu kali.

Sintaks

NTSYSAPI NTSTATUS RtlRunOnceExecuteOnce(
  PRTL_RUN_ONCE         RunOnce,
  PRTL_RUN_ONCE_INIT_FN InitFn,
  PVOID                 Parameter,
  PVOID                 *Context
);

Parameter

[in, out] RunOnce

Penunjuk ke struktur inisialisasi satu kali RTL_RUN_ONCE .

[in] InitFn

Penunjuk ke rutinitas RunOnceInitialization .

[in, out] Parameter

Nilai yang akan diteruskan sebagai parameter Parameter ke rutinitas RunOnceInitialization .

[out] Context

Penunjuk ke variabel PVOID yang menerima data yang diinisialisasi.

Nilai kembali

RtlRunOnceExecuteOnce mengembalikan STATUS_SUCCESS jika operasi berhasil, atau kode kesalahan NTSTATUS yang sesuai jika operasi gagal.

Keterangan

Untuk panggilan pertama ke RtlRunOnceExecuteOnce untuk struktur RTL_RUN_ONCE tertentu, RtlRunOnceExecuteOnce memanggil rutinitas RunOnceInitialization untuk menginisialisasi data. Setiap panggilan berikutnya ke RtlRunOnceExecuteOnce untuk struktur tersebut memasok data yang diinisialisasi yang sama. Rutinitas RunOnceInitialization tidak akan dipanggil dua kali untuk struktur RTL_RUN_ONCE yang sama.

RtlRunOnceExecuteOnce berjalan dengan APC kernel normal dinonaktifkan. Rutinitas tidak boleh dipanggil dalam APC kernel khusus kecuali semua panggilan terjadi pada APC_LEVEL.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia dimulai dengan Windows Vista.
Target Platform Universal
Header ntddk.h (termasuk Ntddk.h)
Pustaka NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL (Lihat bagian Keterangan.)

Lihat juga

RTL_RUN_ONCE

RtlRunOnceBeginInitialize

RtlRunOnceComplete

RtlRunOnceInitialize

RunOnceInitialization