ORCreateKey 函式
在離線登錄區中建立指定的登錄機碼。 如果索引鍵已經存在,函式就會開啟它。
語法
DWORD ORCreateKey(
_In_ ORHKEY Handle,
_In_ PCWSTR lpSubKey,
_In_opt_ PWSTR lpClass,
_In_opt_ DWORD dwOptions,
_In_opt_ PSECURITY_DESCRIPTOR pSecurityDescriptor,
_Out_ PORHKEY phkResult,
_Out_opt_ PDWORD pdwDisposition
);
參數
-
控制碼 [in]
-
離線登錄區中開啟登錄機碼的控制碼。
-
lpSubKey [in]
-
Unicode 字串的指標,其中包含此函式開啟或建立的子機碼名稱。 lpSubKey參數必須指定Handle參數所識別之索引鍵的子機碼;在登錄樹狀結構中,最多可以有 32 個層級。 如需機碼名稱的詳細資訊,請參閱 登錄的結構。
此參數不可為 Null。
索引鍵名稱不區分大小寫。
-
lpClass [in, optional]
-
類別 (此索引鍵) 物件類型。 此參數可能會被忽略。 此參數可以是 Null。
-
dwOptions [in, optional]
-
此參數可以是 0 或下列其中一個值。
值 意義 - REG_OPTION_CREATE_LINK
- 0x00000002L
索引鍵是符號連結。 目標路徑會指派給索引鍵的 L「SymbolicLinkValue」 值。 目標路徑必須是絕對登錄路徑。 如果已設定此選項, 也必須設定REG_OPTION_NON_VOLATILE 。
如果 lpSubKey 參數指定現有的金鑰,則必須使用 REG_OPTION_CREATE_LINK來建立它。
只有在絕對需要應用程式相容性時,才應該使用登錄符號連結。- REG_OPTION_NON_VOLATILE
- 0x00000000L
索引鍵不是變動的;這是預設值。 此資訊會儲存在檔案中,並在重新開機系統時保留。 ORSaveHive 函式會儲存非變動性的索引鍵。 -
pSecurityDescriptor [in, optional]
-
包含新金鑰之安全性描述元 之SECURITY_DESCRIPTOR 結構的指標。 如果 pSecurityDescriptor 為 Null,金鑰會取得預設的安全性描述元。 金鑰的預設安全性描述元中的 ACL 會繼承自其直接父金鑰。
-
phkResult [out]
-
接收已開啟或已建立索引鍵控制碼之變數的指標。 使用 ORCloseKey 函式,在您使用控制碼完成之後關閉金鑰。
-
pdwDisposition [out, optional]
-
接收下列其中一個處置值的變數指標。
值 意義 - REG_CREATED_NEW_KEY
- 0x00000001L
索引鍵不存在且已建立。 - REG_OPENED_EXISTING_KEY
- 0x00000002L
索引鍵已存在,而且只是開啟而不需要變更。 如果 pdwDisposition 為 Null,則不會傳回任何處置資訊。
傳回值
如果函式成功,傳回值會ERROR_SUCCESS。
如果函式失敗,傳回值是 Winerror.h 中定義的非零錯誤碼。 您可以使用 FormatMessage 函式搭配 FORMAT_MESSAGE_FROM_SYSTEM 旗標來取得錯誤的泛型描述。
如果 dwOptions 參數是以 REG_OPTION_CREATE_LINK 設定, 但 REG_OPTION_NON_VOLATILE 清楚,或者要傳回的控制碼會是 hive 根索引鍵的控制碼,則函式會傳回ERROR_INVALID_PARAMETER。
備註
ORCreateKey函式所建立的索引鍵沒有值。 應用程式可以使用 ORSetValue 函式來設定索引鍵值。
ORCreateKey函式無法用來在離線登錄區中建立根機碼。 使用 ORCreateHive 函式 來建立根索引鍵,並取得金鑰的控制碼。
離線登錄不支援儲存個別金鑰。 使用 ORSaveHive 函式 ,將金鑰及其子機碼儲存在 Hive 中。
規格需求
需求 | 值 |
---|---|
可轉散發套件 |
Windows 離線登錄程式庫 1.0 版或更新版本 |
標頭 |
|
DLL |
|
另請參閱