RegSetValueA 函式 (winreg.h)
設定指定之登錄機碼之預設或未命名值的數據。 數據必須是文字字串。
語法
LSTATUS RegSetValueA(
[in] HKEY hKey,
[in, optional] LPCSTR lpSubKey,
[in] DWORD dwType,
[in] LPCSTR lpData,
[in] DWORD cbData
);
參數
[in] hKey
開啟登錄機碼的句柄。 金鑰必須已以KEY_SET_VALUE訪問許可權開啟。 如需詳細資訊,請參閱 登錄機碼安全性和訪問許可權。
RegCreateKeyEx、RegCreateKeyTransacted、RegOpenKeyEx 或 RegOpenKeyTransacted 函式會傳回此句柄。 它也可以是下列其中一個 預先定義的索引鍵:
- HKEY_CLASSES_ROOT
- HKEY_CURRENT_CONFIG
- HKEY_CURRENT_USER
- HKEY_LOCAL_MACHINE
- HKEY_USERS
[in, optional] lpSubKey
hKey 參數的子機碼名稱。 函式會設定指定之子機碼的預設值。 如果 lpSubKey 不存在,函式會建立它。
索引鍵名稱不區分大小寫。
如果此參數為 NULL 或指向空字串,則函式會設定 hKey 所識別之索引鍵的預設值。
如需詳細資訊,請參閱 登錄專案大小限制。
[in] dwType
要儲存的信息類型。 此參數必須是REG_SZ類型。 若要儲存其他數據類型,請使用 RegSetValueEx 函 式。
[in] lpData
要儲存的資料。 此參數不可為 NULL。
[in] cbData
這個參數已忽略。 函式會根據 lpData 參數中的數據大小來計算此值。
傳回值
如果函式成功,傳回值會ERROR_SUCCESS。
如果函式失敗,傳回值是 Winerror.h 中定義的非零錯誤碼。 您可以使用 FormatMessage 函式搭配 FORMAT_MESSAGE_FROM_SYSTEM 旗標,以取得錯誤的一般描述。
備註
如果 lpSubKey 參數指定的索引鍵不存在, RegSetValue 函式會建立它。
如果明確呼叫 RegSetValueA 或使用這個函式的 ANSI 版本 (,或在包含 Windows.h 檔案) 之前未定義 UNICODE,lpData 參數必須是 ANSI 字元字串。 字串會先轉換成 Unicode,再儲存在登錄中。
注意
winreg.h 標頭會將 RegSetValue 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | winreg.h (包含 Windows.h) |
程式庫 | Advapi32.lib |
Dll | Advapi32.dll |