如何在Win32应用程序中填充文件夹浏览器

时间:2015-11-19 09:14:45

标签: c++ visual-studio winapi browser directory

我有这个win32应用程序,它将成为某些文件的转换器。我想要的是一个简单的文件夹浏览器,您可以在其中为转换后的文件选择输入和目标文件。我可以通过拖放导入,奇怪的是比这更简单。我尝试将BROWSEINFOSHBrowseForFolder一起使用,但使用#include <shlobj.h>会给我带来很多错误。有没有其他方法可以通过文件夹浏览获取文件路径?它位于对话框窗口中,使用Windows 8和VS 2013

错误:对#include <shobjidl.h>使用IFileDialog时,我在该头文件中出现语法错误。没有LPTBBUTTONSBHIMAGELIST的标识符。

2 个答案:

答案 0 :(得分:1)

由于您不需要支持XP,因此可以使用IFileDialog界面。有关详细示例,请参阅:

https://msdn.microsoft.com/en-us/library/windows/desktop/bb776913(v=vs.85).aspx

上面的链接包含一个名为BasicFileOpen的函数的完整实现,这正是您所需要的。

答案 1 :(得分:0)

在所有其他包含之前使用#include <shobjidl.h>而不是最后解决我的编译错误并使用IFileDialog工作!