C ++:如何将%USERPROFILE%路径转换为文件路径(应该适用于Windows XP及更高版本)

时间:2014-04-03 08:44:31

标签: c++ windows

如何将%USERPROFILE%路径转换为C ++中的文件路径?它应该适用于Windows XP及更高版本。 我需要它,因为当我尝试使用javaw.exe使用CreateProcessW方法启动.jar文件时,找不到该文件。

1 个答案:

答案 0 :(得分:2)

您可以使用扩展环境变量的函数。例如getenv,或者在Windows上,您可以选择使用GetEnvironmentVariable

但是,找到用户配置文件目录的正确方法是使用Windows API。如果您需要支持XP,则需要使用该文件夹的CSIDL:CSIDL_PROFILE。使用SHGetSpecialFolderPath读出与特定CSIDL值相关联的路径。

这是如何获取用户配置文件目录,虽然我必须承认很难理解这将如何帮助您启动javaw.exe。

<强>更新

在评论中,表明您确实需要临时目录。使用GetTempPath来获取它。