vs.net2005(vc8.0)在64位编译后如何在32位系统运行?

时间:2022-09-08 10:07:35
我在64位win7编译的vc8程序,在winxp32位运行总抱错,
提示"由于应用程序配置不正确,应用程序未能启动.重新安装应用程序可能会纠正这个问题".

查了资料改成mdt,增加这个宏"#undef _AFXDLL",采用静态链接倒是可以解决.
但是我程序里用了clr,请问大虾这时问题该如何解决呢? 

11 个解决方案

#1


使用Windbg调一下,看看是什么问题,有可能是需要装一下相应的.netFramework

#2


由于应用程序配置不正确,应用程序未能启动.重新安装应用程序可能会纠正这个问题
---------------------
这是微软的专用提示,意思是您需要安装可发行组件,也就是在未安装vs2005的目标机器上安装微软可发行组件。

下面是 vs 2008的redistributable包。

Microsoft Visual C++ 2008 Redistributable Package (x86)

http://www.microsoft.com/downloads/thankyou.aspx?familyId=9b2da534-3e03-4391-8a4d-074b9f2bc1bf&displayLang=zh-cn

#3


fw组建重新安装一下

#4


引用 2 楼 jennyvenus 的回复:
由于应用程序配置不正确,应用程序未能启动.重新安装应用程序可能会纠正这个问题
---------------------
这是微软的专用提示,意思是您需要安装可发行组件,也就是在未安装vs2005的目标机器上安装微软可发行组件。

下面是vs 2008的redistributable包。

Microsoft Visual C++ 2008 Redistributable Package (x86)

http://www.microsoft.com/downloads/thankyou.aspx?familyId=9b2da534-3e03-4391-8a4d-074b9f2bc1bf&displayLang=zh-cn


您说的方法我都试过了,不行.
应该是64位和32位操作系统的问题.

#5


与开发环境无关,只要你生成的是32位程序就可以。运行环境需要安装响应版本的VC再发行包和.NET Framework。

#6


引用 4 楼 yinyin121 的回复:
引用 2 楼 jennyvenus 的回复:
由于应用程序配置不正确,应用程序未能启动.重新安装应用程序可能会纠正这个问题
---------------------
这是微软的专用提示,意思是您需要安装可发行组件,也就是在未安装vs2005的目标机器上安装微软可发行组件。

下面是vs 2008的redistributable包。

Microsoft Visual C++ 2008 Redistributable Package (x86)

http://www.microsoft.com/downloads/thankyou.aspx?familyId=9b2da534-3e03-4391-8a4d-074b9f2bc1bf&displayLang=zh-cn


您说的方法我都试过了,不行.
应该是64位和32位操作系统的问题.

我给的链接是vs 2008的,不是vs 2005的,要注意哦。

#7


引用 6 楼 jennyvenus 的回复:
引用 4 楼 yinyin121 的回复:
引用 2 楼 jennyvenus 的回复:
由于应用程序配置不正确,应用程序未能启动.重新安装应用程序可能会纠正这个问题
---------------------
这是微软的专用提示,意思是您需要安装可发行组件,也就是在未安装vs2005的目标机器上安装微软可发行组件。

下面是vs 2008的redistributable包。

Microsoft Visual C++ 2008 Redistributable Package (x86)

http://www.microsoft.com/downloads/thankyou.aspx?familyId=9b2da534-3e03-4391-8a4d-074b9f2bc1bf&displayLang=zh-cn


您说的方法我都试过了,不行.
应该是64位和32位操作系统的问题.

我给的链接是vs 2008的,不是vs 2005的,要注意哦。


2005开发的程序用2008的可以吗?

#8


在Microsoft Visual Studio 8\SDK\v2.0\BootStrapper\Packages目录下面,有一个vcredist_x86.exe,这个就是用于32位系统的VC可再发行包。

#9


VC编译的64位应用仅仅只能在64位Windows上面运行,而当然不能在32位上面运行。

只有32位编译的结果才能在32和64位Windows上面运行。

#10


引用 9 楼 lextm 的回复:
VC编译的64位应用仅仅只能在64位Windows上面运行,而当然不能在32位上面运行。

只有32位编译的结果才能在32和64位Windows上面运行。


我编译的是32位的 。用静态链接编译的程序 可以运行在
32位xp上,但cli的不知怎么编译成静态链接的,总有问题编译不过去。

#11


该回复于2010-02-24 10:50:14被版主删除

#1


使用Windbg调一下,看看是什么问题,有可能是需要装一下相应的.netFramework

#2


由于应用程序配置不正确,应用程序未能启动.重新安装应用程序可能会纠正这个问题
---------------------
这是微软的专用提示,意思是您需要安装可发行组件,也就是在未安装vs2005的目标机器上安装微软可发行组件。

下面是 vs 2008的redistributable包。

Microsoft Visual C++ 2008 Redistributable Package (x86)

http://www.microsoft.com/downloads/thankyou.aspx?familyId=9b2da534-3e03-4391-8a4d-074b9f2bc1bf&displayLang=zh-cn

#3


fw组建重新安装一下

#4


引用 2 楼 jennyvenus 的回复:
由于应用程序配置不正确,应用程序未能启动.重新安装应用程序可能会纠正这个问题
---------------------
这是微软的专用提示,意思是您需要安装可发行组件,也就是在未安装vs2005的目标机器上安装微软可发行组件。

下面是vs 2008的redistributable包。

Microsoft Visual C++ 2008 Redistributable Package (x86)

http://www.microsoft.com/downloads/thankyou.aspx?familyId=9b2da534-3e03-4391-8a4d-074b9f2bc1bf&displayLang=zh-cn


您说的方法我都试过了,不行.
应该是64位和32位操作系统的问题.

#5


与开发环境无关,只要你生成的是32位程序就可以。运行环境需要安装响应版本的VC再发行包和.NET Framework。

#6


引用 4 楼 yinyin121 的回复:
引用 2 楼 jennyvenus 的回复:
由于应用程序配置不正确,应用程序未能启动.重新安装应用程序可能会纠正这个问题
---------------------
这是微软的专用提示,意思是您需要安装可发行组件,也就是在未安装vs2005的目标机器上安装微软可发行组件。

下面是vs 2008的redistributable包。

Microsoft Visual C++ 2008 Redistributable Package (x86)

http://www.microsoft.com/downloads/thankyou.aspx?familyId=9b2da534-3e03-4391-8a4d-074b9f2bc1bf&displayLang=zh-cn


您说的方法我都试过了,不行.
应该是64位和32位操作系统的问题.

我给的链接是vs 2008的,不是vs 2005的,要注意哦。

#7


引用 6 楼 jennyvenus 的回复:
引用 4 楼 yinyin121 的回复:
引用 2 楼 jennyvenus 的回复:
由于应用程序配置不正确,应用程序未能启动.重新安装应用程序可能会纠正这个问题
---------------------
这是微软的专用提示,意思是您需要安装可发行组件,也就是在未安装vs2005的目标机器上安装微软可发行组件。

下面是vs 2008的redistributable包。

Microsoft Visual C++ 2008 Redistributable Package (x86)

http://www.microsoft.com/downloads/thankyou.aspx?familyId=9b2da534-3e03-4391-8a4d-074b9f2bc1bf&displayLang=zh-cn


您说的方法我都试过了,不行.
应该是64位和32位操作系统的问题.

我给的链接是vs 2008的,不是vs 2005的,要注意哦。


2005开发的程序用2008的可以吗?

#8


在Microsoft Visual Studio 8\SDK\v2.0\BootStrapper\Packages目录下面,有一个vcredist_x86.exe,这个就是用于32位系统的VC可再发行包。

#9


VC编译的64位应用仅仅只能在64位Windows上面运行,而当然不能在32位上面运行。

只有32位编译的结果才能在32和64位Windows上面运行。

#10


引用 9 楼 lextm 的回复:
VC编译的64位应用仅仅只能在64位Windows上面运行,而当然不能在32位上面运行。

只有32位编译的结果才能在32和64位Windows上面运行。


我编译的是32位的 。用静态链接编译的程序 可以运行在
32位xp上,但cli的不知怎么编译成静态链接的,总有问题编译不过去。

#11


该回复于2010-02-24 10:50:14被版主删除