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.
Der Konfigurations-Manager bietet verschiedene Möglichkeiten für Registrierungsfiltertreiber, um Registrierungsvorgängen Kontextinformationen zuzuweisen. Ein Registrierungsfiltertreiber kann Folgendes ausführen:
Weisen Sie der RegistryCallback-Routine Kontextinformationen zu.
Wenn Ihr Treiber CmRegisterCallback oder CmRegisterCallbackEx aufruft , um sich für die Benachrichtigung über einen Registrierungsvorgang zu registrieren, kann der Treiber einen vom Treiber definierten Kontextwert angeben. Der Konfigurations-Manager übergibt diesen Kontextwert jedes Mal an die RegistryCallback-Routine des Treibers, wenn der Konfigurations-Manager die Routine aufruft.
Diese Kontextinformationen werden ab Windows XP unterstützt.
Weisen Sie einem Registrierungsvorgang Kontextinformationen zu.
Treiber können vorgangsspezifische Kontextinformationen im CallContext-Member jeder REG_XXX_KEY_INFORMATION Struktur speichern, die die RegistryCallback-Routine des Treibers empfängt. Wenn Ihr Treiber sowohl eine Vorabbenachrichtigung als auch eine Nachbenachrichtigung für einen Registrierungsvorgang empfängt, enthält die REG_POST_OPERATION_INFORMATION-Struktur einen Zeiger auf die entsprechende Vorabbenachrichtigungsstruktur. Wenn eine RegistryCallback-Routine eine REG_POST_OPERATION_INFORMATION-Struktur empfängt, stimmt das CallContext-Element dieser Struktur mit dem CallContext-Member der Vorbenachrichtigungsstruktur überein.
Das CallContext-Element dieser Strukturen ist ab Windows Vista verfügbar.
Weisen Sie einem Registrierungsschlüsselobjekt Kontextinformationen zu.
Eine RegistryCallback-Routine kann einem bestimmten Registrierungsschlüsselobjekt Kontextinformationen zuweisen. Wenn die RegistryCallback-RoutineCmSetCallbackObjectContext aufruft, um einem Schlüsselobjekt Kontextinformationen zuzuweisen, enthalten nachfolgende Vor- und Nachbenachrichtigungen für alle Vorgänge für das Objekt den Kontextwert im ObjectContext-Member jeder REG_XXX_KEY_INFORMATION-Struktur . Wenn ein Treiber mehrere RegistryCallback-Routinen bereitstellt, kann der Treiber für jede Routine unterschiedliche Kontextinformationen für ein einzelnes Registrierungsschlüsselobjekt zuweisen.
Wenn ein Treiber CmSetCallbackObjectContext aufgerufen hat, erhält die RegistryCallback-Routine des Treibers eine RegNtCallbackObjectContextCleanup-Benachrichtigung , nachdem das Handle des Schlüsselobjekts geschlossen wurde. Als Reaktion auf diese Benachrichtigung sollte die Routine alle Ressourcen freigeben, die sie für den Kontext des Objekts zugewiesen hat. Wenn der Argument1-Parameter für die RegistryCallback-RoutineRegNtCallbackObjectContextCleanup ist, ist der Parameter Argument2 ein Zeiger auf eine REG_CALLBACK_CONTEXT_CLEANUP_INFORMATION Struktur, die einen Zeiger auf den Kontext enthält.
Die CmSetCallbackObjectContext-Routine und die RegNtCallbackObjectContextCleanup-Benachrichtigung sind ab Windows Vista verfügbar.