c++编写程序打包后在其他电脑上运行白屏问题

c++编写程序,vs2010编辑的,打包工具是setup factory7.0 打包成exe文件后,有的电脑是可以运行,有的电脑上不可以,运行时会出现白屏问题,安装了VC运行库也没有解决,用depends跑,报错如下:Warning: At least one module has an unresolved import due to a missing export function in a delay-load dependent module.
有的电脑能运行,有的运行不了,是程序本身的问题,还是其他电脑的环境的问题,因为程序在开发的机子上是可以运行的,在几个其他的电脑也能运行,但有的就运行不了,出现白屏,然后就退出了,求大神指教,应该如何解决

Debug和Release差异可大了,Debug是包含了大量符号信息的,而且库函数也完全是另外一套,可以说是完全不同的东西。
原则上说,Debug是不能发布的。
因为一个如果对方有懂底层的人,可以很快构造出源代码,或者随意修改你发布的软件,这从保护知识产权上来说是不合适的。
另外一个问题是Debug版本中的很多调试库是要求很高权限的,这可能不适用于很多机器。
其他的性能方面的问题暂不考虑。
--------------------------------------------------------------
解决问题:一般来说我对我们这里开发开发软件的要求是必须在全新安装的操作系统中可以运行。
使用VirtualBox、VMware等软件,安装一个全新的Windows Vista、Windows 7及其他目标版本操作系统,注意有些版本的操作系统是区分语言的,这可能需要更多的虚拟机。如果被测软件不能正常工作,请安装相应组件,直到可以运行为止。
大部分类似故障产生的原因是依赖于IE、MediaPlayer、DotNet等Windows自动升级中包含的东西。
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-03-27
首先保证程序是 release 发布模式编译的,其次从问题上来看应该是引用的某些模块的函数不存在,可能是真的不存在也可能是模块的版本不匹配。最好的办法是看看编写程序中都用到了哪些模块,哪些lib,把对应的 dll 都放置在可执行目录下一起发布,该注册的注册。追问

没有采用release,使用的是debug,但在最终效果上应该差异不大,性能上可能不同吧,其次是模块的函数,本机编译的时候并没有错误,为什么移植到其他的电脑上就有问题了呢

追答

首先发布的东西得用 release 编译,当然,这个和你说的问题可能关联不大。

每个人的机器环境都不一样,你本机编译没错误,可是你调用的dll,使用的控件等等和别的机器就可能不一样了,这些都可能是导致问题的原因。具体的还得去查你的代码,这里猜来猜去也没啥意义。

第2个回答  2013-03-27
看看源代码stdafx.h中,定义的WINVER或_WIN32_WINNT或_WIN32_WINDOWS那些宏的值,
和你的目标系统是不是一致的?
另外,你打包的时候,setup项目中设置的目标机是x86还是x64的。追问

现在还没有打包,只是把需要的文件移植到其他电脑看是不是能用,其次,stdafx.h中要求的最低版本是Vista 而目标系统是win7应该是可以运行的。系统问题应该不会有

第3个回答  推荐于2018-04-23
如果是debug 发布的话, 需要的打包资源可能需要更多, 因为调试工具这部分都需要弄进去...

按照字面提示, 应该还是软件逻辑问题...

这个bug 找起来有点费劲了...

c++编写程序打包后在其他电脑上运行白屏问题
Debug和Release差异可大了,Debug是包含了大量符号信息的,而且库函数也完全是另外一套,可以说是完全不同的东西。原则上说,Debug是不能发布的。因为一个如果对方有懂底层的人,可以很快构造出源代码,或者随意修改你发布的软件,这从保护知识产权上来说是不合适的。另外一个问题是Debug版本中的很多调试...

有没有人写过c++定时检测浏览器的系统啊,检测浏览器是否关闭,页面是否...
如果还是不行,最简单的解决办法就是:下载更换其它浏览器。【不用删除windowsIE,直接使用其它浏览器即可。】比如:360安全浏览器、世界之窗浏览器、傲游等。可以试试下面的方法:看看能不能解决。◆开始→运行→输入cmd→回车,在命令提示符下输入下面命令 for%1in(%windir%system32*.dll)doregsvr32.e...

电脑c++卸载了白屏了怎么办
请尝试重新启动电脑,开机界面F8进入安全模式后尝试启动电脑管家。如果依然无法启动,请卸载后重新安装电脑管家(一定要清理干净)

台式电脑白屏怎么解决?
若PC显示器显示和笔记本屏幕显示同为白屏,那么显卡损坏的可能性就比较高了。笔记本电脑的显卡分两组同步信号输出,一组供给液晶屏、另一组供到显示端口,所以是否与显卡有相连最好的测试方法就是接上PC显示器了。 如果还不能解决从以下几个方面在看看,再不行建议送去维修站: 1、散热不良,显示器、电源和CPU工作...

新买的电脑突然白屏了 重启之后就变成图片上的样子 我该怎么办 悬赏10...
系统程序出错了。可能是缺少C++运行库文件引起的。建议使用驱动精灵更新下C++运行库试试。如果还是不行的话,那么就重装系统好了。

电脑启动时出现microsoft visual c++runtime library运行错误,怎么办...
电脑死机的原因有很多第一 BIOS设置不当或者超频不成功引起“死机” 可以通过主板放电让BIOS还原到默认值 2 软硬件有冲突或者是系统文件损坏从而造成死机,重装系统试试可以解决3机子中病毒 了 开机按F8 进安全模式全盘杀毒试试 4电脑内部散热不良所造成的“死机 比如说CPU温度过高引起的 建议清理...

编程都用什么电脑编程要用什么电脑配置
学习编程对电脑的配置要求不高,2000元以内配置的台式电脑基本就行。 编程是编定程序的中文简称,就是让计算机代码解决某个问题,对某个计算体系规定一定的运算方式,使计算体系按照该计算方式运行,并最终得到相应结果的过程。 机器语言: 在计算机系统中,一条机器指令规定了计算机系统的一个特定动作。一个系列的计算机在硬...

DELL笔记本电脑白屏.
一. 显卡故障. 可能是驱动的问题,或是显卡本身的问题.二. 连接故障. 就是显卡到显示屏之间连线问题. 这种故障在笔记本电脑上时有发生,连线断路或是短路,引起显示信号不能正常. 但在台式机上比较少见,原因是台式机的连线粗而牢固.又不常移动.所以很少损坏.三. 显示器本身故障. 控制屏幕的主芯片损坏...

文明6无法运行的几种解决方法
问题一:启动器相关问题。如无法在当前系统运行、提示需要C++环境、程序无法启动Microsoft VC运行环境、打开游戏没有任何反应但可见启动器进程。解决方法是修复msvcp140.dll文件,这通常需要安装visual c++ 2015-2019 redistributable或直接安装Visual c++ 2015 redistr update 3。问题二:启动器更新问题。可能因...

电脑系统自带的C++程序能不能删除
需要在win7系统安装Boot Camp来添加驱动程序以驱动苹果笔记本的键盘快捷方式和触控板。用驱动精灵也可安装大部分驱动程序。删除苹果系统后安装的win7启动时会较长时间白屏约20-30秒,可以在启动时立即按左下角的option键,直到显示启动盘选择界面,再点击Windows系统启动即可。如果以后想重新安装OS X,用...

相似回答