Win32函数获取C:\ ProgramData的路径

Mik*_*012 14 winapi path programdata

我的应用程序需要安装一些可以在运行时由应用程序编辑的文件.安装shield提供了一个别名[CommonAppDataFolder],它将在Vista和Windows 7上解析为c:\ programData,也可以在Windows XP上运行.是否有返回类似路径的win32函数?

也许我需要根据操作系统调用不同的功能?

Rom*_* R. 22

SHGetFolderPath/ SHGetSpecialFolderPath通过CSIDL_COMMON_APPDATA论证得到你.

请参阅此处的代码段(位于底部):如何使用Visual C++编写将用户和应用程序数据存储在正确位置的Windows XP应用程序.

  • Windows XP:C:\ Documents and Settings\All Users\Application Data
  • Windows Vista:C:\ ProgramData
  • Windows 7:C:\ ProgramData

另见:CSIDL.

  • @ Mike2012,这两个路径具有相同的目的-一个在XP及以下版本上,另一个在Vista及以上版本上。因此,您获得的结果取决于您使用的操作系统。 (2认同)
  • 参见上文-在不同Windows版本中常量解析为的示例路径 (2认同)