SHRegSetPathA 函式 (shlwapi.h)

採用檔案路徑、以環境字串取代資料夾名稱,並將產生的字串放在登錄中。

語法

LSTATUS SHRegSetPathA(
  [in] HKEY   hKey,
  [in] LPCSTR pcszSubKey,
  [in] LPCSTR pcszValue,
  [in] LPCSTR pcszPath,
       DWORD  dwFlags
);

參數

[in] hKey

類型: HKEY

目前開啟之機碼的句柄,或登錄根機碼的句柄。

[in] pcszSubKey

類型: LPCTSTR

包含現有子機碼名稱之 Null 終止字串的指標。 如果子機碼不存在, SHRegSetPath 將會失敗。

[in] pcszValue

類型: LPCTSTR

以 Null 結尾字串的指標,其名稱為要保存路徑字串的值。

[in] pcszPath

類型: LPCTSTR

具有完整檔案路徑之 Null 終止字串的指標。

dwFlags

類型: DWORD

保留的。

傳回值

類型: LSTATUS

如果成功,則傳回ERROR_SUCCESS,否則傳回 Windows 錯誤碼。

備註

對於 Windows 2000,SHRegSetPath 會使用 PathUnExpandEnvStrings ,將資料夾名稱轉換為對應的環境字串。 如果有任何環境變數被取代,登錄值將會以 REG_EXPAND_SZ 數據類型來設定。 否則,它會使用 REG_SZ 數據類型來設定。

下列資料夾路徑將會由其相等的環境字串取代。

資料夾 環境字串
目前使用者的配置檔資料夾 %USERPROFILE%
[所有使用者] 設定檔資料夾 %ALLUSERSPROFILE%
Program Files 資料夾 %ProgramFiles%
系統根資料夾 %SystemRoot%
系統驅動器號 %SystemDrive%
 
注意 %USERPROFILE% 相對於進行呼叫的使用者。 如果使用者從服務模擬,此函式將無法運作。
 
上表中所列的環境變數可能不會全部設定在任何特定系統上。 如果未設定環境變數,則不會取消展開。 特別是,這些變數都未針對 Windows 95 或 Windows 98 的預設環境設定。 %ProgramFiles% 變數是 Windows 2000 的新功能,通常不會在 Microsoft Windows NT 4.0 系統上設定。

注意

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

規格需求

需求
最低支援的用戶端 Windows 2000 Professional、Windows XP [僅限桌面應用程式]
最低支援的伺服器 Windows 2000 Server [僅限桌面應用程式]
目標平台 Windows
標頭 shlwapi.h
程式庫 Shlwapi.lib
Dll Shlwapi.dll (5.0 版或更新版本)