GetOpenFileName 偶尔不弹文件选择框,程序卡死
如题,GetOpenFileName 偶尔不弹文件选择框,程序卡死;
代码如下:
OPENFILENAME ofn = { 0 };
ZeroMemory(&ofn,sizeof(ofn));
TCHAR strOpenFileNames[80*MAX_PATH] = { 0 };//用于接收文件名
TCHAR szPath[MAX_PATH];
TCHAR szFileName[80*MAX_PATH];
ofn.lStructSize = sizeof(OPENFILENAME);//结构体大小
ofn.hwndOwner = GetForegroundWindow();
char type[MAX_PATH];
memset(type,0,sizeof(type));
string tmpType = "File Type";
memcpy(type,tmpType.c_str(),tmpType.length());
memcpy(type+tmpType.length()+1,fileType.c_str(),fileType.length());
ofn.lpstrFilter = TEXT("All File\0*.*\0Image
Files\0*.jpg;*.JPG;*.jpeg;*.JPEG;*.BMP;*.bmp;*.PNG;*.png;*.docx;*.xlsx;*.xls;*.txt;*.ppt;*.pptx\0\0");//设置过滤
ofn.lpstrFile = strOpenFileNames;
ofn.lpstrFile[0] = '\0';
ofn.nMaxFile = sizeof(strOpenFileNames);
ofn.lpstrInitialDir = NULL;
char buf[MAX_PATH] = "file selection";
ofn.lpstrTitle = TEXT(buf);//使用系统默认标题留空即可
ofn.Flags = OFN_FILEMUSTEXIST | OFN_PATHMUSTEXIST | OFN_HIDEREADONLY | OFN_EXPLORER |
OFN_ALLOWMULTISELECT;
if (GetOpenFileName(&ofn)) //偶尔运行到此处,不弹文件选择框,程序卡在这里
{}