选择文件路径常用的WIN SHELL API函数 SHBrowseForFolder
通常参数BROWSEINFO中的pidlRoot为NULL,那么当路径选择窗口初始化的时候会被选中到“我的电脑”中
如果给BROWSEINFO的ulFlags增加“新建文件夹”这个按钮,即ulFlags需要BIF_NEWDIALOGSTYLE,此时如果pidlRoot继续为NULL,那么初始化出来选择的路径就在C:\User\xxx,用户名目录下,这种情况如何保持SHBrowseForFolder原貌,而使其初始化在“我的电脑”中
通过设置其回调函数来实现
case BFFM_INITIALIZED:
// set initial directory
TCHAR szMyComputer[] = _T("::{20D04FE0-3AEA-1069-A2D8-08002B30309D}");
::SendMessage(hWnd, BFFM_SETSELECTION, TRUE, (LPARAM)szMyComputer);
}
break;