VS2005 C++ 读取多文件对话框, 谢了先

来源:百度知道 编辑:UC知道 时间:2024/06/25 17:12:27
1,常规空项目中怎么添加打开文件对话框呢?还是需要创建Windows 窗体应用程序项目?
2,怎么读取对话框选择的多个文件名,给读文件的函数呢?据我所知fopen()的参数只能给定const 变量啊?

好久没有编程了现在的VS2005 不太熟啊,请求达人帮忙,谢了先

正确的使用方法如下:
CString m_Spath
CFileDialog myDlg(FALSE, "",NULL,OFN_OVERWRITEPROMPT|OFN_HIDEREADONLY,"*.*|*.*||", this);
if(myDlg.DoModal()==IDOK)
m_Spath=myDlg.GetPathName();//得到全路径
第一个参数设置为TRUE是打开文件对话框,FALSE是保存文件对话框。
第二个参数是默认的扩展名,你可以换成你自己的扩展名或设置 为NULL和 0
的三个参数是默认的文件名,你也可以。。。。。
第四个参数是打开的方式,具体情况你的查帮助或设置为NULL
第五个参数是可选的扩展名,注意字符串的末尾必须是 and and
第六个是父窗口的指针,一般设置为NULL或 0
就这么多了,呵呵,其实帮助里面都有。

//////////////////////////////
再给你段api创建打开 2000风格
//////////////////////////////////

char szFile[MAX_PATH] = {0}; // buffer for file name
OPENFILENAME ofn;

memset(&ofn, 0, sizeof(OPENFILENAME));
ofn.lStructSize = sizeof(OPENFILENAME);
ofn.hwndOwner = this->m_hWnd;
ofn.lpstrFile = szFile;
ofn.nMaxFile = MAX_PATH;
ofn.lpstrFilter = TEXT("Backup Files (*.bak)\0*.bak\0All (*.*)\0*.*\0");
ofn.lpstrDefExt = TEXT(&