共用方式為


SHRegWriteUSValueW 函式 (shlwapi.h)

將值寫入使用者特定子樹中的登錄子機碼(HKEY_CURRENT_USER或HKEY_LOCAL_MACHINE)。

語法

LSTATUS SHRegWriteUSValueW(
  [in]         HUSKEY     hUSKey,
               LPCWSTR    pwzValue,
  [in]         DWORD      dwType,
  [in]         const void *pvData,
  [in]         DWORD      cbData,
  [in]         DWORD      dwFlags
);

參數

[in] hUSKey

類型:HUSKEY

目前開啟登錄子機碼的句柄。 子機碼必須已以KEY_SET_VALUE訪問許可權開啟。 如需詳細資訊,請參閱 登入機碼安全性和存取權限

此句柄可透過 SHRegOpenUSKey 函式取得。

pwzValue

待定

[in] dwType

類型:DWORD

要儲存在 pszValue 所指定值的數據型別。 在 Winnt.h 和 Wdm.h 中定義的下列其中一個登錄值類型。

REG_NONE (0x00000000)

REG_SZ (0x00000001)

REG_EXPAND_SZ (0x00000002)

REG_BINARY (0x00000003)

REG_DWORD (0x00000004)

REG_DWORD_LITTLE_ENDIAN(0x00000004)

REG_DWORD_BIG_ENDIAN(0x00000005)

REG_MULTI_SZ (0x00000007)

REG_RESOURCE_LIST (0x00000008)

REG_FULL_RESOURCE_DESCRIPTOR (0x00000009)

REG_RESOURCE_REQUIREMENTS_LIST (0x0000000A)

REG_QWORD (0x0000000B)

REG_QWORD_LITTLE_ENDIAN(0x0000000B)

[in] pvData

類型:const void*

要針對 pszValue 所指定值所設定之資料的指標。 對於字串型別,例如REG_SZ,字串必須以 Null 結束。 使用 REG_MULTI_SZ 資料類型時,字串必須以兩個 Null 字元終止。 路徑中的反斜杠前面必須加上另一個反斜杠做為逸出字元。 例如,指定 「C:\mydir\myfile」 來儲存字串 「C:\mydir\myfile」。。

[in] cbData

類型:DWORD

pvData 參數所指向的數據大小,以位元組為單位。 如果數據的類型為 REG_SZ、REG_EXPAND_SZ 或 REG_MULTI_SZ,cbData 必須包含終止 Null 字元或字元的大小。

[in] dwFlags

類型:DWORD

旗標,指出應該寫入數據的子樹。 下列其中一或多個值:

SHREGSET_HKCU (0x00000001)

只有在 pszValue 中指定的名稱值目前不存在於指定的子機碼下時,才寫入 HKEY_CURRENT_USER

SHREGSET_FORCE_HKCU (0x00000002)

寫入至 HKEY_CURRENT_USER。 如果 pszValue 中指定的名稱值 已經存在,則會覆寫該值。

SHREGSET_HKLM (0x00000004)

寫入 HKEY_LOCAL_MACHINE 只有在 psz Value 中指定的值目前不存在於指定的子機碼下時。。

SHREGSET_FORCE_HKLM (0x00000008)

寫入至 HKEY_LOCAL_MACHINE。 如果 pszValue 中指定的名稱值 已經存在,則會覆寫該值。

SHREGSET_DEFAULT(0x00000006)

相當於 (SHREGSET_FORCE_HKCU | SHREGSET_HKLM)。

傳回值

類型:LSTATUS

如果成功,則傳回ERROR_SUCCESS;否則,在 Winerror.h 中定義的非零錯誤碼。 您可以使用 FormatMessage 函式搭配 FORMAT_MESSAGE_FROM_SYSTEM 旗標來擷取錯誤的泛型描述。

言論

若要使用 SHRegWriteUSValue,您必須先使用 SHRegOpenUSKey開啟密鑰。 開啟金鑰之後,您可以視需要使用 SHRegWriteUSValue

如果您只需要寫入單一值,您應該使用 SHRegSetUSValue,這兩者都會開啟索引鍵並寫入值。

如果您需要在同一個索引鍵上寫入一個以上的值,SHRegWriteUSValue 的多個呼叫通常比 SHRegSetUSValue更有效率,因為索引鍵只會開啟一次。

注意

shlwapi.h 標頭會根據 UNICODE 預處理器常數的定義,將 SHRegWriteUSValue 定義為自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的 慣例。

要求

要求 價值
最低支援的用戶端 Windows 2000 Professional、Windows XP [僅限傳統型應用程式]
支援的最低伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平臺 窗戶
標頭 shlwapi.h
連結庫 Shlwapi.lib
DLL Shlwapi.dll (4.71 版或更新版本)

另請參閱

登錄實值類型