我想在OnCreateDocument中实现打开文件,弹出文件选择对话框,但是每次运行到这里都要出错,说是“Unhandled exception in xxx.exe:0xC0000005 Access Violation”,这是什么原因呢?要获取一些其他的什么指针值吗?我是刚学MFC,很多东西都不懂,望高手赐教!谢谢!
这是代码:
LRESULT CMyDoc::OnCreateDocument(WPARAM wParam, LPARAM lParam)
{
// TODO: Add your command handler code here CFileDialog my(TRUE);
CString FileTitle;
CString FileName;
if(my.DoModal()==IDOK)
{
FileTitle=my.GetFileTitle();
FileName=my.GetFileName();
}
else
return 0L;
return;
}
这是代码:
LRESULT CMyDoc::OnCreateDocument(WPARAM wParam, LPARAM lParam)
{
// TODO: Add your command handler code here CFileDialog my(TRUE);
CString FileTitle;
CString FileName;
if(my.DoModal()==IDOK)
{
FileTitle=my.GetFileTitle();
FileName=my.GetFileName();
}
else
return 0L;
return;
}
主程序还没起来你就打开文件对话框?这就像你还没开机就想运行程序一个道理。
if (dlg.DoModal() == IDOK)
{
str=dlg.GetPathName();//获得文件路径名
SetDlgItemText(IDC_EDIT1,str);
}