[MFC]设置文件夹目录时遇到的问题

简介:

一、问题代码

    CString szPath;
    BROWSEINFO bi;   
    bi.hwndOwner 
=  m_hWnd;
    bi.pidlRoot 
=  NULL;   
    bi.pszDisplayName 
=  szPath.GetBuffer();   
    bi.lpszTitle 
= L " 请选择目录: " ;   
    bi.ulFlags 
=  BIF_RETURNFSANCESTORS  |  BIF_RETURNONLYFSDIRS; 
    bi.lpfn 
=  NULL;   
    bi.lParam 
=   0 ;   
    bi.iImage 
=   0 ;   
    
// 弹出选择目录对话框
    LPITEMIDLIST lp  =  SHBrowseForFolder( & bi);   
    
if (lp  &&  SHGetPathFromIDList(lp, szPath.GetBuffer()))   
        AfxMessageBox(szPath);
    
else    
        AfxMessageBox(L
" 无效的目录,请重新选择 " );

二、报错截图

  

三、解决错误

    TCHAR szPath[MAX_PATH];
    BROWSEINFO bi;   
    bi.hwndOwner  =  m_hWnd;
    bi.pidlRoot  =  NULL;   
    bi.pszDisplayName  =  szPath;   
    bi.lpszTitle  = L " 请选择目录: " ;   
    bi.ulFlags  =  BIF_RETURNFSANCESTORS  |  BIF_RETURNONLYFSDIRS; 
    bi.lpfn  =  NULL;   
    bi.lParam  =   0 ;   
    bi.iImage  =   0 ;   
    
// 弹出选择目录对话框
    LPITEMIDLIST lp  =  SHBrowseForFolder( & bi);   
    
if (lp  &&  SHGetPathFromIDList(lp, szPath))   
        AfxMessageBox(CString(szPath));
    
else    
        AfxMessageBox(L " 无效的目录,请重新选择 " );

    说明:把CString改成了TCHAR数组。

本文转自博客园农民伯伯的博客,原文链接:[MFC]设置文件夹目录时遇到的问题,如需转载请自行联系原博主。

目录
相关文章
|
2天前
win11查看文件/文件夹所使用的程序
win11查看文件/文件夹所使用的程序
6 0
|
2月前
|
C#
C# Winform 选择文件夹和选择文件
C# Winform 选择文件夹和选择文件
44 0
|
3月前
|
安全
如何打开WindowsApps文件夹
如何打开WindowsApps文件夹
32 1
|
6月前
|
Windows
VSS中上传一个文件夹(包括子文件夹和文件)
VSS中上传一个文件夹(包括子文件夹和文件)
|
Python
Pycharm 在文件夹目录下,对文件重命名,右键运行和文件名不一致问题
在解答学员问题的时候!想着这个问题或许是大部分同学都会遇到的一个问题,于是在此记录!也是想着给一些学员解答疑惑。
Pycharm 在文件夹目录下,对文件重命名,右键运行和文件名不一致问题
MFC删除某个文件夹下的所有目录文件
1、该函数是删除文件夹下的所有文件 http://bbs.csdn.net/topics/390448664 BOOL CMainFrame::DeleteDirectory(con...
1799 0