我自己电脑上用VS2008上BUILD出来的exe文件,怎么在别人电脑上(没有安装VS等软件)正确运行

我自己电脑上用VS2008上BUILD出来的exe文件,怎么在别人电脑上(没有安装VS等软件)正确运行,第1张

vs编译的文件要带自己的运行库文件的,当然你用release版本会好点,具体的工作就很麻烦了

Vs版编译的EXE在其他编译环境中打开,增加和修改运行库:release版本(\VC\redis\x86)或者Debug版本(\VC\redist\Debug_NonRedist\x86)

具体方法如下:

1、打开EXE文件(用edit打开或者用记事本打开),找到版本号VERSION(如:“version="90210228"”);

2、Vs的安装目录下寻找redis(如:“L:\Program Files\Microsoft Visual Studio 90\VC\redist”),修改其中所有的manifest文档中的版本号与EXE文件一致,把exe文件放到X86目录下;

3、DEBUG版本:修改\VC\redist\Debug_NonRedist\x86中的三个文件中的manifest文档中的版本号与其EXE文件一致(如:“L:\Program Files\Microsoft Visual Studio 90\VC\redist\Debug_NonRedist\x86”),把exe文件放到\VC\redist\Debug_NonRedist\x86中。

4、RELEASE版本:修改\VC\redist\x86中的三个文件中的manifest文档中的版本号与其EXE文件一致(如:L:\Program Files\Microsoft Visual Studio 90\VC\redist\x86),把exe文件放到\VC\redist\x86中。

这是我自己总结的,VS2008上我试验过,一切OK

本机环境:64位win7,安装了64位的oracle桌面类

服务器环境:64位windows server 2008,64位oracle服务器端

问题:本机用sql developer连数据库没有问题,winform程序连接也没有问题,但是web程序连接oracle失败,报错:“尝试加载 Oracle 客户端库时引发 BadImageFormatException。如果在安装 32 位 Oracle 客户端组件的情况下以 64 位模式运行,将出现此问题。“

解决过程:在网上查找原因,说是因为VS的webDewebServerexe 是一个32位的进程,所以连不上64位数据库,解决方法提了很多,包括把项目的属性里的生成选项里的目标平台:改为x86,web项里的服务器改成iis不使用vs自带的web deleloper ment 服务,修改path环境变量等,但是都没管用。

最终的解决办法:安装32位oracle客户端(win32_11gR2_clientzip),但是这样一来winform程序又连不上数据库了,得把winform程序的项目属性里生成选项的目标平台改成x86,这样就都行了。

首先你正常使用VS2008编译出来的程序是debug版本的,所以你要改成release版本的,其次默认程序使用动态库链接,但是有的机子由于没有安装VS2008支持库,所以无法运行,所以为了特异性你应该使用静态库链接。还有什么问题加我QQ

,258861434

以上就是关于我自己电脑上用VS2008上BUILD出来的exe文件,怎么在别人电脑上(没有安装VS等软件)正确运行全部的内容,包括:我自己电脑上用VS2008上BUILD出来的exe文件,怎么在别人电脑上(没有安装VS等软件)正确运行、vs连接Oracle数据库问题、vs2008 生成的EXE运行问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9601105.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存