繁体   English   中英

Visual Studio 2008 DEBUG版本的32位应用程序崩溃在64位Win 10 PC上崩溃,但是当我们在64位Win10上安装Visual Studio 2008时,相同的应用程序也可以工作

[英]Visual Studio 2008 DEBUG build of 32-bit appli CRASHES on a 64-bit Win 10 PC but same appli works when we install Visual Studio 2008 on 64-bit Win10

我面临以下问题:

背景

我有一个在Visual Studio 6.0上编写的Win32旧版应用程序(exe和dll)和驱动程序(dll),该文件以前在Windows Xp的Debug版本中运行良好(请注意:我们在DEBUG配置中需要它,而不是Release)。 我将Visual Studio 6.0的msvc *类型的dll,MFC dll的&清单文件以及exe复制到exe以使其运行。

问题

现在,已经在Visual Studio 2008调试模式下重新编译了相同的旧版32位应用程序和驱动程序dll。 然后将其复制到未安装VS2008的 64位Windows 10 PC(也曾尝试Windows 7,但未成功)上运行的PC上。 我复制了VS2008的msvc *类型dll( msvcp90d.dll,msvcr90d.dll ),MFC dll和清单文件( Microsoft.VC90.DebugCRT.manifest )以及exe。

在启动此应用程序的调试版本时(它在启动时执行许多初始化活动,并且还调用驱动程序dll的init方法),在64位Windows 10和Windows 7 PC 上启动时都会崩溃

什么有效

在Windows 10 PC上安装VS2008后 ,该应用程序的调试版本将正确启动而不会崩溃,并且可以正常运行。 (还请注意,使用旧的Visual Studio 6.0的相同应用程序的Debug构建在Windows 10上运行良好)。

什么不起作用

在Windows 10 PC上未安装VS2008时,应用程序的调试版本在启动时会崩溃。

需求

我们绝对需要在Windows 10 PC上运行该应用程序的DEBUG配置。

开发环境

  • 用于开发的操作系统:64位Windows 7
  • 目标操作系统:64位Windows 10
  • IDE:Visual Studio 2008 SP1
  • 应用程序和驱动程序dll / exe:32位

我尝试了许多变通方法,例如在VS2008中使用32位路径进行构建($ \\ Program Files(x86)\\ Microsoft SDKs \\ Windows ..),安装了VS2008的可再发行文件(x86和x64均以“管理员”用户身份运行),在兼容模式下运行(Win Xp ..),将dll从安装了VS2008的PC的system32文件夹复制到没有VS2008的PC等。但是Debug构建始终在启动时崩溃。

任何帮助或指针,将不胜感激。 如果您想了解更多详细信息,请告诉我。 先感谢您。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM