SHGetFolderPath下载文件夹

时间:2015-03-10 12:32:01

标签: c++ windows visual-studio

我如何获得'下载'文件夹路径?

我只是没有在CSIDL's中看到它,我可以将“下载”附加到另一个值,但“下载”可能不会取决于用户语言?

我在KNOWNFOLDERID(FOLDERID_Downloads)中看到了它,但那是Vista及以上版本。

1 个答案:

答案 0 :(得分:1)

要获取“下载”文件夹,您必须在Vista或更高版本上运行。该文件夹未在较早版本的Windows上定义。

它没有CSIDL,因为它是为在新的SHGetKnownFolderPath API中使用而创建的,而不是在SHGetFolderPath API中使用。

如果要获取true文件夹,则必须使用新API。如果您希望在较旧版本的Windows上保持一些“兼容性”,则可以使用KNOWNFOLDERID页面中列出的默认值(如果您无法使用该API)。您可以使用运行时链接来使用API​​以允许应用程序在较旧版本的Windows上运行。

在SHGetKnownFolderPath的备注下,它确实提到:

  

此函数替换SHGetFolderPath。那个旧函数现在只是SHGetKnownFolderPath的包装器。