OPENFILENAME ofn;
TCHAR szFile[8 * MAX_PATH];
TCHAR szPath[MAX_PATH];
TCHAR szCopy[MAX_PATH];
TCHAR *pFilePath;
ZeroMemory(&ofn, sizeof(ofn));
ofn.lStructSize = sizeof(ofn);
ofn.lpstrFile = szFile;
ofn.lpstrFile[0] = TEXT('\0');
ofn.nMaxFile = sizeof(szFile);
ofn.lpstrFilter = TEXT(".jpg\0*.jpg\0");
ofn.nFilterIndex = 2;
ofn.hwndOwner = hWnd;
ofn.Flags = OFN_EXPLORER | OFN_PATHMUSTEXIST | OFN_FILEMUSTEXIST
// 关闭打开对话框后,其多选的结果保存在ofn.lpstrFile中,以'\0'分割
if(GetOpenFileName(&ofn))
{
lstrcpyn(szPath, szFile, ofn.nFileOffset);
szPath[ofn.nFileOffset] = TEXT('\0');
if(szPath[_tcslen(szPath) - 1] != TEXT('\\'))
{
_tcscat_s(szPath, MAX_PATH, TEXT("\\"));
}
pFilePath = szFile + ofn.nFileOffset;
while( * pFilePath)
{
ZeroMemory(szCopy, sizeof(szCopy));
_tcscpy_s(szCopy, szPath);
_tcscat_s(szCopy, pFilePath);
pFilePath += _tcslen(pFilePath) + 1;
// szCopy中保存的就是每一个文件的完整路径
}
}