文件目录的有关问题(急100分)
文件目录的问题(急100分)
我的window PE下,只有c盘和d盘,没有“我的电脑”“桌面”“我的文档”“网上邻居”。我用以下代码出现问题了。
void CmyDialogDlg::OnBnClickedOk()
{
// TODO: Add your control notification handler code here
UpdateData();
//得到保存所在位置
CString folder;
if( !CmyDialogDlg::GetTargetFolder(this-> m_hWnd,folder,L "请选择镜像文件保存位置 ") )
{
return;
}
m_SavePath = folder;
UpdateData(FALSE);
//OnOK();
}
BOOL CmyDialogDlg::GetTargetFolder(HWND hwndOwner,CString& folder,LPCTSTR title)
{
CString strPath;
BROWSEINFO bInfo;
LPITEMIDLIST pidl;
ZeroMemory ( (PVOID) &bInfo,sizeof (BROWSEINFO));
//LPITEMIDLIST pidlRoot = NULL;
//HRESULT hres = SHGetSpecialFolderLocation(hwndOwner,CSIDL_DRIVES,&pidlRoot);
bInfo.hwndOwner = hwndOwner;
bInfo.pszDisplayName = strPath.GetBuffer (MAX_PATH*2);
bInfo.lpszTitle = title;//;L "请选择保存镜像文件的文件夹 ";
bInfo.ulFlags = BIF_RETURNFSANCESTORS|BIF_RETURNONLYFSDIRS;
bInfo.lpfn = NULL;
bInfo.lParam = 0;
//bInfo.pidlRoot = pidlRoot;
bInfo.pidlRoot = "d:\\ ";
if ((pidl = ::SHBrowseForFolder(&bInfo)) == NULL)
return FALSE;
if (::SHGetPathFromIDList(pidl,strPath.GetBuffer(MAX_PATH*2)) == FALSE)
return FALSE;
folder = (LPCTSTR)strPath;
return TRUE;
}
运行的时候老提示找不到桌面,找不到我的电脑,找不到我的文档。报出这些错误后,才出现c盘,d盘的文件目录。怎样把这些可恶的错误提示去掉啊,就让结果出来c盘D盘的目录树就ok了。哪位大哥看看啊。多谢多谢。
------解决方案--------------------
重做系统
------解决方案--------------------
换个别的方法看是不是系统问题。
------解决方案--------------------
用户点击时填充简单些
我的window PE下,只有c盘和d盘,没有“我的电脑”“桌面”“我的文档”“网上邻居”。我用以下代码出现问题了。
void CmyDialogDlg::OnBnClickedOk()
{
// TODO: Add your control notification handler code here
UpdateData();
//得到保存所在位置
CString folder;
if( !CmyDialogDlg::GetTargetFolder(this-> m_hWnd,folder,L "请选择镜像文件保存位置 ") )
{
return;
}
m_SavePath = folder;
UpdateData(FALSE);
//OnOK();
}
BOOL CmyDialogDlg::GetTargetFolder(HWND hwndOwner,CString& folder,LPCTSTR title)
{
CString strPath;
BROWSEINFO bInfo;
LPITEMIDLIST pidl;
ZeroMemory ( (PVOID) &bInfo,sizeof (BROWSEINFO));
//LPITEMIDLIST pidlRoot = NULL;
//HRESULT hres = SHGetSpecialFolderLocation(hwndOwner,CSIDL_DRIVES,&pidlRoot);
bInfo.hwndOwner = hwndOwner;
bInfo.pszDisplayName = strPath.GetBuffer (MAX_PATH*2);
bInfo.lpszTitle = title;//;L "请选择保存镜像文件的文件夹 ";
bInfo.ulFlags = BIF_RETURNFSANCESTORS|BIF_RETURNONLYFSDIRS;
bInfo.lpfn = NULL;
bInfo.lParam = 0;
//bInfo.pidlRoot = pidlRoot;
bInfo.pidlRoot = "d:\\ ";
if ((pidl = ::SHBrowseForFolder(&bInfo)) == NULL)
return FALSE;
if (::SHGetPathFromIDList(pidl,strPath.GetBuffer(MAX_PATH*2)) == FALSE)
return FALSE;
folder = (LPCTSTR)strPath;
return TRUE;
}
运行的时候老提示找不到桌面,找不到我的电脑,找不到我的文档。报出这些错误后,才出现c盘,d盘的文件目录。怎样把这些可恶的错误提示去掉啊,就让结果出来c盘D盘的目录树就ok了。哪位大哥看看啊。多谢多谢。
------解决方案--------------------
重做系统
------解决方案--------------------
换个别的方法看是不是系统问题。
------解决方案--------------------
用户点击时填充简单些