指定內容資訊

Configuration manager 提供數種方式,讓登錄篩選驅動程式將內容資訊指派給登錄作業。 登錄篩選驅動程式可以:

  • 將內容資訊指派給 RegistryCallback 常式。

    當您的驅動程式呼叫 CmRegisterCallbackCmRegisterCallbackEx 來註冊註冊作業的通知時,驅動程式可以指定驅動程式定義的內容值。 Configuration manager 會在每次 configuration manager 呼叫常式時,將此內容值傳遞至驅動程式的 RegistryCallback 常式。

    從 Windows XP 開始支援此內容資訊。

  • 將內容資訊指派給登錄作業。

    驅動程式可以將特定作業的內容資訊儲存在驅動程式RegistryCallback常式所接收之每個REG_XXX_KEY_INFORMATION結構的CallCoNtext成員中。 如果您的驅動程式收到登錄作業的預先通知和後續通知, REG_POST_OPERATION_INFORMATION 結構會包含適當預先通知結構的指標。 當 RegistryCallback 常式收到 REG_POST_OPERATION_INFORMATION 結構時,該結構的 CallCoNtext 成員會符合預先通知結構的 CallCoNtext 成員。

    從 Windows Vista 開始,可以使用這些結構的CallCoNtext成員。

  • 將內容資訊指派給登錄機碼物件。

    RegistryCallback常式可將內容資訊指派給特定的登錄機碼物件。 如果RegistryCallback常式呼叫CmSetCallbackObjectCoNtext將內容資訊指派給索引鍵物件,則物件上所有作業的後續通知和後續通知將會在每REG_XXX_KEY_INFORMATION結構的ObjectCoNtext成員中包含內容值。 如果驅動程式提供多個 RegistryCallback 常式,驅動程式可以針對單一登入機碼物件,為每個常式指派不同的內容資訊。

    如果驅動程式已呼叫 CmSetCallbackObjectCoNtext,驅動程式的 RegistryCallback 常式會在金鑰組象的控制碼關閉之後收到 RegNtCallbackObjectCoNtextCleanup 通知。 為了回應這項通知,常式應釋放它為物件內容所配置的任何資源。 當RegistryCallback常式的引數 1參數為RegNtCallbackObjectCoNtextCleanup時,引數 2參數是REG_CALLBACK_CONTEXT_CLEANUP_INFORMATION結構的指標,其中包含內容的指標。

    從 Windows Vista 開始,可以使用CmSetCallbackObjectCoNtext常式和RegNtCallbackObjectCoNtextCleanup通知。