等待高手出现...两次调用OpenDocumentFile出错(可给50分)

rsp19801226 2007-08-07 10:28:09
CMainFrame::OnFileNew()
{
CNewDialog dlg(this);
if(dlg.DoModal() == IDOK)
{
CreateDir(strFilePath);//新建一个目录
CString temp="";
CString tempFile="";

temp=strFilePath;
temp.operator += ("\\");
temp.operator += (strFileName);
if(iOperator==0)//建立新的项目
{
if(!InitPBTree(strFileName))
{
return;
}

//建立头文件
tempFile=temp;

tempFile.operator += (".h");
SetbFile(TRUE);
IsShowInWorkspace = TRUE;
pApp->OpenDocumentFile((LPCTSTR)tempFile);//error 第一次可以运行,但第2次就程序出错,出现发送错误的对话框
}
}
我在前面每句加return;都不出错,直到打开文件那句.
各位高手这是什么原因呢?若不够还可用下面贴加分:
http://community.csdn.net/Expert/topic/5620/5620800.xml?temp=.9835626
...全文
214 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
jun_01 2007-08-07
  • 打赏
  • 举报
回复
执行pApp->OpenDocumentFile后,会调用Document的OnOpen、CView的Update等函数。

你检查一下你的代码,是否某些地方重复初始化或者重复释放了。
rsp19801226 2007-08-07
  • 打赏
  • 举报
回复
更怪的是,别人让我在App类里面,就是应用程序类里面再加一个OnFileNew就可以实现了,第1次调用的是CMainFrame::OnFileNew(),第2次则是调用的App类里的OnFileNew()了.
rsp19801226 2007-08-07
  • 打赏
  • 举报
回复
有些奇怪,同样的代码在文档类里面又可以,当然指针变换了一下的.也就是说主菜单执行到这一步时就会出错.

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧