VC6项目转换到VC2010后, 不能打开子对话框

crsupport 2021-04-16 01:35:36
一个VC6项目, 转换到VC2010后, 编译通过. 运行时, 有部分模态和非模态对话框,创建时失败, 窗口句柄返回空, 不发送WM_INITDIALOG消息;

在下面语句中, VC2010调试结果, 返回空句柄, 无法再进入函数内部调试了. 但在VC6中正常运行
hWnd = ::CreateDialogIndirect(hInst, lpDialogTemplate, pParentWnd->GetSafeHwnd(), AfxDlgProc);

代码在VC6下, 编译运行都没问题. 请指教有哪些原因会造成这种故障? 加载的对话框里面也都是标准控件
...全文
494 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
an_bachelor 2021-04-19
  • 打赏
  • 举报
回复
有可能是resource.h中的diablo\control id变了、冲突了,这个文件里的id一定情况下会自动调整。
crsupport 2021-04-18
  • 打赏
  • 举报
回复
有人指点下吗?
另外说明
在InitInstance()中运行了InitCommonControlsEx()
VC2010调试运行, 虽然打不开子窗口, 但不会崩溃.
crsupport 2021-04-17
  • 打赏
  • 举报
回复
GetLastError =0
zgl7903 2021-04-16
  • 打赏
  • 举报
回复
GetLastError 查看错误信息

2,585

社区成员

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

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