Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die RtlRunOnceExecuteOnce führt eine einmalige Initialisierung durch.
Syntax
NTSYSAPI NTSTATUS RtlRunOnceExecuteOnce(
PRTL_RUN_ONCE RunOnce,
PRTL_RUN_ONCE_INIT_FN InitFn,
PVOID Parameter,
PVOID *Context
);
Parameter
[in, out] RunOnce
Ein Zeiger auf die RTL_RUN_ONCE einmalige Initialisierungsstruktur.
[in] InitFn
Ein Zeiger auf eine RunOnceInitialization Routine.
[in, out] Parameter
Der Wert, der als Parameter Parameter an die RunOnceInitialization Routine übergeben werden soll.
[out] Context
Ein Zeiger auf eine PVOID-Variable, die die initialisierten Daten empfängt.
Rückgabewert
RtlRunOnceExecuteOnce gibt STATUS_SUCCESS zurück, wenn der Vorgang erfolgreich ist, oder den entsprechenden NTSTATUS-Fehlercode, wenn der Vorgang fehlschlägt.
Bemerkungen
Für den ersten Aufruf von RtlRunOnceExecuteOnce für eine bestimmte RTL_RUN_ONCE Struktur ruft RtlRunOnceExecuteOnce die RunOnceInitialization Routine zum Initialisieren der Daten auf. Jeder nachfolgende Aufruf von RtlRunOnceExecuteOnce für diese Struktur liefert die gleichen initialisierten Daten. Die RunOnceInitialization- Routine wird nicht zweimal für dieselbe RTL_RUN_ONCE Struktur aufgerufen.
RtlRunOnceExecuteOnce wird mit deaktivierten normalen Kernel-APCs ausgeführt. Die Routine sollte nicht innerhalb eines speziellen Kernel-APC aufgerufen werden, es sei denn, alle Aufrufe erfolgen bei APC_LEVEL.
Anforderungen
| Anforderung | Wert |
|---|---|
| mindestens unterstützte Client- | Verfügbar ab Windows Vista. |
| Zielplattform- | Universal |
| Header- | ntddk.h (include Ntddk.h) |
| Library | NtosKrnl.lib |
| DLL- | NtosKrnl.exe |
| IRQL- | <= APC_LEVEL (Siehe Abschnitt "Hinweise").) |