VC6.0,单文档结构项目,在菜单中弹出对话框,在有的机器上DoModal正常,而在有的机器上DoModal没任何反应,即点击菜单中的项不弹出对话框也不提示任何错误,调试发现DoModal返回的m_nModalResult = -1。另我将该工程拷贝到另外一台不能正常运行该程序的电脑上,VC加载该工程时提示“ACTIVEX控件不能示例”,估计情况与http://topic.csdn.net/u/20100426/13/b2e99045-026d-48b5-b5ca-97e1be937466.html描述相似期望大家的踊跃回复
解决方案 »
- MFC中更新edit框的内容
- send,recv,connect 在win 2000内有两个版本:wsock32.dll, ws2_32.dll吗?一个程序能同时调2种吗?如何同时拦截
- 请问 class里面的 function 问题
- 请C++高手指点---用了这么久C++,连这个也不会
- 请问谁有2003 10月的高程考试试题和答案发给我?
- 如何用raw socket向指定IP、端口发送SYN数据包?
- 为何Socket能响应Accept但缺不能响应Receive
- 请问各位!如何在vc编译环境下运行和调试c程序。
- 用VS做五子棋最好能做到什么效果
- StatusBar急救
- 关于XListCtrl的使用错误!!
- 求关于单文档窗口的问题
其实那个ACTIVEX控件就是MSChart。
那咋个注册呢?我在开发的机器上运行得没事啊?
有的电脑注册了
有的没有
问题我自己解决了,你们都说到点子上了,特别是5楼。
我在对话框调用了MSChart控件,在有的电脑上注册了Mschrt20.ocx,能正常弹出对话框,而没有注册该控件的电脑则不能正常使用。
我解决的办法是使用inno Setup对程序进行可安装文件制作时,在脚本中的[Files]段中添加如下语句:
Source: "C:\WINDOWS\system32\MSChrt20.ocx"; DestDir: "{sys}"; CopyMode: alwaysskipifsameorolder; Flags: restartreplace regserver
即在用户安装软件时就注册该控件,这样就把问题解决了。希望对遇到类似情况的同行有帮助~