c语言--windows文件夹选择对话框--windows api--SHBrowseForFolder


#include <windows.h>
#include <ShlObj.h>
#include <stdio.h>

int main()
{
    TCHAR szPathName[MAX_PATH];
    BROWSEINFO bInfo = { 0 };
    bInfo.hwndOwner = GetForegroundWindow();//父窗口    
    bInfo.lpszTitle = TEXT("浏览文件夹");
    bInfo.ulFlags = BIF_RETURNONLYFSDIRS | BIF_USENEWUI/*包含一个编辑框 用户可以手动填写路径 对话框可以调整大小之类的..*/ |
        BIF_UAHINT/*带TIPS提示*/ | BIF_NONEWFOLDERBUTTON /*不带新建文件夹按钮*/;
    LPITEMIDLIST lpDlist;
    //lpDlist = SHBrowseForFolder(&bInfo);
    //if (lpDlist != NULL)
    if(SHBrowseForFolder(&bInfo))
    {
        SHGetPathFromIDList(lpDlist, szPathName);
        MessageBox(NULL, szPathName, L"Dir Name", MB_OK);

    }
    else
    {
        printf("user cancle\n");
    }
    return 0;
}

猜你喜欢

转载自blog.csdn.net/c5113620/article/details/79995486