利用MFC中的CFileDialog创建的打开文件对话框不能显示

zhuhaiqin 2011-10-12 04:18:30
下面是我写的“打开文件”按钮的响应函数中的代码,怎么点击 “打开文件”按钮后能弹出包含内容为“dfg”的提示框,但不能显示打开文件对话框啊?!
CFileDialog dlg(TRUE);
//TRUE为OPEN对话框,FALSE为SAVE AS对话框

if(dlg.DoModal()==IDOK)
{
AfxMessageBox("dfg");

}
请高手指点一下,非常感谢!!
...全文
194 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
laslull 2011-10-12
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 zhuhaiqin 的回复:]

引用 9 楼 laslull 的回复:
引用 6 楼 zhuhaiqin 的回复:

不是,就是基于对话框程序,程序中用到了log4cxx

现在你用的什么选项?共享mfc dll?多线程调试版本?

是那两个选项,可我的同事用的是“共享mfc dll”和“多线程调试 DLL (/MDd)”,我们俩的程序都是共享的。我若用他使用的选项就出错。
[/Quote]
你可以把两个选项改成一致的 你选择共享mfc dll的时候 后面会自动切换成多线程调试 DLL (/MDd)
你不可以是不是因为你选择的是静态连接mfc lib啊
多线程调试 DLL (/MDd)本意很明显是选择多线程调试版本的dll方式的runtime
这个必须和你使用的dll里面的runtime是一致的
zhuhaiqin 2011-10-12
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 laslull 的回复:]
引用 6 楼 zhuhaiqin 的回复:

不是,就是基于对话框程序,程序中用到了log4cxx

现在你用的什么选项?共享mfc dll?多线程调试版本?
[/Quote]
是那两个选项,可我的同事用的是“共享mfc dll”和“多线程调试 DLL (/MDd)”,我们俩的程序都是共享的。我若用他使用的选项就出错。
laslull 2011-10-12
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 zhuhaiqin 的回复:]

不是,就是基于对话框程序,程序中用到了log4cxx
[/Quote]
现在你用的什么选项?共享mfc dll?多线程调试版本?
zhuhaiqin 2011-10-12
  • 打赏
  • 举报
回复
现在能打开了,关闭了当前的编辑器,重新打开了一下就ok了,这是什么玩意啊。
qiuxin425 2011-10-12
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 zhuhaiqin 的回复:]
不是,就是基于对话框程序,程序中用到了log4cxx
[/Quote]

最好的办法就是你再新建一个基于对话框的程序,就用一个按钮测试一下就知道是不是log4cxx的影响

如果不是就是你创建过程中选择了别的选项,创建时用默认的

如果再不是,就是你的2005出问题了
zhuhaiqin 2011-10-12
  • 打赏
  • 举报
回复
不是,就是基于对话框程序,程序中用到了log4cxx
laslull 2011-10-12
  • 打赏
  • 举报
回复
你代码是在dll里的?
zhuhaiqin 2011-10-12
  • 打赏
  • 举报
回复
调用dlg.DoModal()返回的是IDOK啊,但就是显示不出打开文件对话框。
gameslq 2011-10-12
  • 打赏
  • 举报
回复
在代码 if(dlg.DoModal()==IDOK)处设置断点
跟踪查看下原因
zhuhaiqin 2011-10-12
  • 打赏
  • 举报
回复
我同事的电脑运行也可以,我用的是vs2005,是不是我的配置缺点什么或是多点什么啊,我将同时的拷了过来,结果我的编辑器自动修改运行时库为:多线程调试(/MTd),之后就出现了这种情况。同事的是“多线程调试 DLL (/MDd)”,我若改为“多线程调试 DLL (/MDd)”,则出现提示:#error Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version. Please #define _AFXDLL or do not use /MD[d]
,网上说,应使用“在共享 DLL 中使用 MFC”,我照做后还是报这个错,郁闷啊
lmhforever 2011-10-12
  • 打赏
  • 举报
回复
我刚才试了一下 可以

16,546

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • AIGC Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

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