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

时间:2018-08-03 14:06:58

标签: windows visual-studio

我面临以下问题:

背景

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

问题

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

在启动此应用程序的调试版本时(它会在启动时执行许多初始化活动,还调用驱动程序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构建始终在启动时崩溃。

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

0 个答案:

没有答案