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% 相对于进行调用的用户。 如果从服务模拟用户,则此函数不起作用。
注意
shlwapi.h 标头将 SHRegSetPath 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 专业版、Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | shlwapi.h |
Library | Shlwapi.lib |
DLL | Shlwapi.dll (5.0 或更高版本) |