共用方式為


篩選應用程式 Hives 上的登錄作業

使用者模式應用程式會在 登錄中使用應用程式 Hives 來儲存應用程式特定狀態資料。

登錄篩選驅動程式會針對應用程式登錄區上的登錄作業接收其 RegistryCallback 常式的呼叫。 這些呼叫不會區分應用程式登錄區上的登錄作業,以及其他類型的登錄區上的作業。

若要載入應用程式 Hive,應用程式會呼叫 RegLoadAppKey

應用程式 Hives 會在 下 \\REGISTRY\\A 載入,而不是 在 或 \\REGISTRY\\USER 底下 \\REGISTRY\\MACHINE 載入。

請注意,沒有任何方法可以周遊 \\REGISTRY\\A 。 嘗試在 \REGISTRY\A 下開啟機碼失敗,並出現錯誤狀態 STATUS_ACCESS_DENIED

若要存取應用程式 Hive 中的金鑰,應用程式會使用呼叫 RegLoadAppKey時所收到的控制碼。

作業系統會在關閉 Hive 的所有控制碼之後,自動卸載應用程式 Hive。

相較于其他類型的登錄區,每個機碼都會使用自己的安全描述元來保護,應用程式 Hive 的安全性是以 Hive 檔案的安全性描述元為基礎。 這表示:

  • 嘗試在應用程式登錄區中的個別金鑰上設定安全性描述項失敗,並出現錯誤狀態 STATUS_ACCESS_DENIED
  • 載入 Hive 成功的實體可以修改整個 Hive。

處理 create-key 和 open-key 作業的登錄篩選驅動程式, (由RegNtPreOpenKeyRegNtPreOpenKeyExRegNtPreOpenKeyEx、RegNtPreCreateKey 和 RegNtPreCreateKeyEx通知值) 必須小心不要使用絕對路徑) (一開始 \\REGISTRY\\A\\ 開啟應用程式登錄區;只有登錄管理員可以這麼做。 例如,如果登錄篩選驅動程式嘗試以這種方式開啟應用程式登錄區 (,例如呼叫 ZwOpenKey 常式) ,作業就會失敗,並出現錯誤狀態 STATUS_ACCESS_DENIED

絕對路徑名稱字串會出現在REG_CREATE_KEY_INFORMATIONREG_CREATE_KEY_INFORMATION_V1REG_OPEN_KEY_INFORMATIONREG_OPEN_KEY_INFORMATION_V1結構的CompleteName成員中。