CFileDialog dlgFileOpen(TRUE,"txt","*.txt",OFN_OVERWRITEPROMPT|OFN_HIDEREADONLY|OFN_ALLOWMULTISELECT,_T("Text Files (*.txt)"),NULL);
if(dlgFileOpen.DoModal()==IDOK)
{
CFile tmpFile;
tmpFile.Open(dlgFileOpen.GetPathName(),CFile::modeRead,NULL);
int FileSize=tmpFile.GetLength();
tmpFile.Close();
if(FileSize>100000)
{
MessageBox("Wrong!You can't take a file over 100k");
return;
}
          }

解决方案 »

  1.   

    按这个例子改
    在文件类型列表框的编辑框要显示“可执行文件(*.exe)”,而在它的下拉列表框中列出“视频文件(*.avi)、All Files(*.*)”内容,则变量定义如下:CFileDialog m_MyOpenDialog(TRUE,"exe",NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,"可执行文件(*.exe) | *.exe|视频文件(*.bat) | *.bat |All Files (*.*) | *.* ||",NULL);
      

  2.   

    搂主这段代码应该没问题如果出现乱码,
    CFileDialog FileDlg(TRUE,"",NULL,OFN_OVERWRITEPROMPT,"Msp Files(*.txt)|*.txt",AfxGetMainWnd());
    这一种才会出