我一直在网上搜索并与这件事作斗争一个多小时,但似乎仍然无法让它发挥作用。大多数人在论坛等上做到这一点时似乎很满意,但我的仍然无法正常工作。我试图强制 SHBrowseForFolder() 函数在我选择的文件夹中启动。
char current[MAX_PATH];
strcpy(current,"C:\\Users");
char outbuf[MAX_PATH];
BROWSEINFO bis;
bis.hwndOwner = NULL;
bis.pidlRoot = NULL;
bis.pszDisplayName = outbuf;
bis.lpszTitle = (LPCSTR)"HERE";
bis.ulFlags = BIF_NEWDIALOGSTYLE|BIF_RETURNONLYFSDIRS;
bis.lpfn = NULL;
bis.lParam = (LPARAM)current;
SHBrowseForFolder(
&bis
);
看起来这应该是一个相对简单的任务。:/ 目前,上面的代码仍然显示默认:桌面文件夹。除了从特定文件夹开始之外,如果可能的话,我还希望它只显示该文件夹及以下文件夹,而不能访问父目录。
我在这里想念什么?