请问如何得到选定磁盘目录的名称?CFileDialog好象必须制定文件才行。 想直接浏览选定一个目录。如果用CFileDialog,必须选择一个文件才行,还要经过子符串相减。好象Windows里很多程序可以直接指定目录,请问该如何实现?多谢高手。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 参昭MSDN SHBrowseForFolder CString WINAPI GetPathFromFolder(CWnd* pWnd){ LPMALLOC pMalloc; if (::SHGetMalloc(&pMalloc) == NOERROR) { BROWSEINFO bi; char pszBuffer[MAX_PATH]; LPITEMIDLIST pidl; bi.hwndOwner = pWnd->GetSafeHwnd(); bi.pidlRoot = NULL; bi.pszDisplayName = pszBuffer; bi.lpszTitle = _T("Select a Starting Directory"); bi.ulFlags = BIF_RETURNFSANCESTORS | BIF_RETURNONLYFSDIRS; bi.lpfn = NULL; bi.lParam = 0; if ((pidl = ::SHBrowseForFolder(&bi)) != NULL) { if (::SHGetPathFromIDList(pidl, pszBuffer)) { return pszBuffer; } pMalloc->Free(pidl); } pMalloc->Release(); } return "";} 参考:http://www.codeguru.com/files/getFolder.html VS2008与OpenCV2.1的安装配置问题 MFC菜单栏刷新问题 MSchart 这个空间画出的饼图怎么样啊? 编写一个满足如下要求的Socket程序,大家帮帮忙! 做像VC工具中的工作区(Workspace)时遇到的问题,高分求解! SOS:老师要求做一个串口通信的程序 请问关于播放声音快慢的问题!!!!谢谢先。 使用cdaorecordset*rs,怎样在access表中插入数据?100分--------wait..... 就目前来看有VC有哪些开发的方面? 关于显示图片的问题 关于installshield一问? 如何往端口写数据(用VC++语言)
{
LPMALLOC pMalloc;
if (::SHGetMalloc(&pMalloc) == NOERROR)
{
BROWSEINFO bi;
char pszBuffer[MAX_PATH];
LPITEMIDLIST pidl;
bi.hwndOwner = pWnd->GetSafeHwnd();
bi.pidlRoot = NULL;
bi.pszDisplayName = pszBuffer;
bi.lpszTitle = _T("Select a Starting Directory");
bi.ulFlags = BIF_RETURNFSANCESTORS | BIF_RETURNONLYFSDIRS;
bi.lpfn = NULL;
bi.lParam = 0;
if ((pidl = ::SHBrowseForFolder(&bi)) != NULL)
{
if (::SHGetPathFromIDList(pidl, pszBuffer))
{
return pszBuffer;
}
pMalloc->Free(pidl);
}
pMalloc->Release();
}
return "";
}
http://www.codeguru.com/files/getFolder.html