CFileDialog dlg(TRUE,NULL,NULL,OFN_ALLOWMULTISELECT,NULL,NULL);
DWORD MAXFILE=50;
TCHAR* pc=new TCHAR[MAXFILE*(MAX_PATH+1)+1];
pc[0]=pc[1]=0;
dlg.m_ofn.nMaxFile=MAXFILE;
dlg.m_ofn.lpstrFile=pc;
if(dlg.DoModal()==IDOK)
{
POSITION pos =dlg.GetStartPosition();
while(pos != NULL)
{
CString szFileName;
szFileName=dlg.GetNextPathName(pos);
pixelFilePathName.push_back(szFileName);
dcmNum++;
}
MessageBox(pixelFilePathName[0]);
}else if(dlg.DoModal()==IDCANCEL)
{
exit(0);
}
我想读取多个文件,但是发现只能读取选中的第一个文件,经过调试,发现是执行了szFileName=dlg.GetNextPathName(pos);后pos的值变为0x00000000了,这是为什么?