VS2010 MFC编写的 exe,在个别电脑上不能运行

wushirenfei3 2013-01-08 11:32:48
VS2010 MFC编写的 exe,在极个别电脑上不能运行,没有任何错误提示。双击软件不启动。但是运行其他软件正常。

·检查了framework版本正确
·InitInstance() 里的代码检查没问题,代码还没执行到 OnInitDialog()。
·安装了VS2010最新版本的Redistributable Package (vcredist_x86)。
·用DEPENDS.EXE软件监测,没有提示有少了哪个dll


请支招,问题的可能原因? 如何解决?
(在大多数电脑都可以运行,就个别...)
...全文
1952 28 打赏 收藏 转发到动态 举报
写回复
用AI写文章
28 条回复
切换为时间正序
请发表友善的回复…
发表回复
huangxiangbo316 2014-12-24
  • 打赏
  • 举报
回复
是注册的问题吗?我也碰到过类似的情况,发现VC6编译的可以运行,VS2010编译的不能运行。
sichuanwww 2014-12-09
  • 打赏
  • 举报
回复
jackiesen 2014-12-09
  • 打赏
  • 举报
回复
个别电脑?32位还是64位操作系统?这两个库文件安装系统不一样
赵4老师 2014-12-09
  • 打赏
  • 举报
回复
在64位Windows下: 64位exe和dll在目录c:\windows\system32目录下; 32位exe和dll在目录c:\windows\syswow64目录下; 所以要注意: 在win64位系统下注册32位ocx或dll需要将32位ocx或dll拷贝到c:\windows\syswow64\目录下。 且注册要用c:\windows\syswow64\regsvr32 xxxxxxx.ocx或dll
boygo1982 2014-12-04
  • 打赏
  • 举报
回复
那么多原因都排除了难道是可怕的36零~
joy_v 2014-12-02
  • 打赏
  • 举报
回复
你还是打包成静态库吧
漂泊者011 2014-12-02
  • 打赏
  • 举报
回复
把2010在那台电脑上安装,然后调试,或远程调试
modyaj 2014-11-14
  • 打赏
  • 举报
回复
要是缺少库文件 或者组件之类的 应该是一运行就崩溃才对啊
一条晚起的虫 2014-11-14
  • 打赏
  • 举报
回复
引用 7 楼 wushirenfei3 的回复:
[quote=引用 5 楼 tiger9991 的回复:] 在InitInstance()里面输出日志,很有可能是初始化失败,导致退出。
m_pMainWnd = &dlg; int nResponse = dlg.DoModal(); 是这句执行失败了。怎么办呢?[/quote] // 是否用了COM组件? // 需要注册的。
ahengge 2014-11-14
  • 打赏
  • 举报
回复
楼上正解,我是用到了comm控件。 用上面的方法解决的。
赵4老师 2014-11-14
  • 打赏
  • 举报
回复
用depends.exe查看exe文件依赖的dll
andyzysraul 2014-04-01
  • 打赏
  • 举报
回复
昨天也遇到了这个问题,不过被我解决了。 1.原因:程序中使用了LZ自己添加到工程的Active控件,而目标机器上没有安装注册该控件。 2.解决方法:将该控件的.ocx文件拷贝到目标机器某个盘,假设 F:\sth.ocx;以管理员身份打开cmd,输入 regsvr32.exe F:\sth.ocx(注意中间有个空格),会提示该控件注册成功。这个时候再双击MFC的exe文件,就可以打开了。
xiaohutushen30 2013-06-14
  • 打赏
  • 举报
回复
静态编译就行了
能哥 2013-06-13
  • 打赏
  • 举报
回复
检查resource.h里面的ID是否匹配,这问题很常见的,F11跟进可以分析的出的哦。
C少 2013-03-29
  • 打赏
  • 举报
回复
是你建工程的时候应该选择使用静态库,这个是将你编译完需要的dll都会放在debug文件或release文件夹下,是为了防止移到其他计算机事缺少动态库是程序无法运行
菜牛 2013-03-29
  • 打赏
  • 举报
回复
看你提供的信息,应该不是程序本身或者运行时库的问题,又没有出错信息,比较难分析。我碰到过类似的可能是你对话框使用了某个控件,不是系统自带的或者不是标准控件,目标机器上又没有安装,初始化的时候出错。所以你先检查一下是否有使用非标准控件的情况,再看看到底是什么控件,程序初始化的时候再去检查系统是否有该控件或者控件是否创建成功。
lxl843 2013-03-29
  • 打赏
  • 举报
回复
exe和dll都静态编译啊
山伟 2013-03-29
  • 打赏
  • 举报
回复
你有安装VS2010的再分发包吗?试试看吧
lijianli9 2013-02-01
  • 打赏
  • 举报
回复
到对话框的初始化中看看。
wushirenfei3 2013-01-31
  • 打赏
  • 举报
回复
有人可以帮帮我吗?问题一直没有解决。。。
加载更多回复(8)

15,471

社区成员

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

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