“应用程序配置不正确";并且“并排配置不正确",并且“并排配置不正确".运行VS2008 64位调试版本 [英] "application configuration is incorrect" and "side-by-side configuration is incorrect" running VS2008 64-bit debug build

查看:133
本文介绍了“应用程序配置不正确";并且“并排配置不正确",并且“并排配置不正确".运行VS2008 64位调试版本的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用具有64位插件的64位OS Windows 7 Ultimate计算机VS2008.

I am working on a 64-bit OS windows 7 ultimate machine VS2008 with 64bit addon.

我已经成功地在32& 64位,调试和发布配置. 64位调试未启动.它给出了错误:

I have successfully build my projects in both 32 & 64 bit, debug and release config. The 64 bit debug is not launching; it gives the error:

无法启动程序xxx 此应用程序启动失败,因为应用程序配置不正确.查看清单文件以查找可能的错误.重新安装该应用程序可能会解决此问题.有关更多零售,请参阅应用程序事件日志.

Unable to Start program xxx This application has failed to start because application configuration is incorrect. Review the manifest file for possible errors. Reinstalling the application may fix this problem. For more retails see application event log.

我运行了依赖遍历器. 从可重新分配路径C:\ Program Files(x86)\ Microsoft Visual Studio 9.0 \ VC \ redist \ Debug_NonRedist \ amd64 \ Microsoft.VC90.DebugCRT 我加了 Microsoft.VC90.DebugCRT.manifest msvcm90d msvcp90d msvcr90d Microsoft.VC90.DebugOpenMP vcomp90d.sll 在我的解决方案的bin \ debug文件夹中.

I ran the dependency walker. From the redistibutable path C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\redist\Debug_NonRedist\amd64\Microsoft.VC90.DebugCRT I added Microsoft.VC90.DebugCRT.manifest msvcm90d msvcp90d msvcr90d Microsoft.VC90.DebugOpenMP vcomp90d.sll in the bin\debug folder of my solution.

最后,依赖项遍历程序没有留下任何黄色标记(缺少文件),但仍然出现如下错误:

Finally dependency walker didnt have any yellow marks (missing files) left, but still it gave errors like:

错误:找不到至少一个必需的隐式或转发依赖项. 错误:由于隐式相关模块中缺少导出功能,因此至少一个模块的导入无法解析. 错误:找到了具有不同CPU类型的模块. 错误:"e:\ xyz.EXE"中的并行配置信息包含错误.该应用程序无法启动,因为其并行配置不正确.请查看应用程序事件日志或使用命令行sxstrace.exe工具获取更多详细信息(14001).

Error: At least one required implicit or forwarded dependency was not found. Error: At least one module has an unresolved import due to a missing export function in an implicitly dependent module. Error: Modules with different CPU types were found. Error: The Side-by-Side configuration information in "e:\xyz.EXE" contains errors. The application has failed to start because its side-by-side configuration is incorrect. Please see the application event log or use the command-line sxstrace.exe tool for more detail (14001).

32位清单显示:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
      <requestedPrivileges>
        <requestedExecutionLevel level="asInvoker" uiAccess="false"></requestedExecutionLevel>
      </requestedPrivileges>
    </security>
  </trustInfo>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type="win32" name="Microsoft.VC90.DebugCRT" version="9.0.21022.8" **processorArchitecture="x86"** publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
    </dependentAssembly>
  </dependency>
</assembly>

64位调试清单具有:

Whereas the 64 bit debug manifest has:

 <dependency>
    <dependentAssembly>
      <assemblyIdentity type="win32" name="Microsoft.VC90.DebugCRT" version="9.0.21022.8" processorArchitecture="amd64" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
    </dependentAssembly>
  </dependency>

我不明白的是,为什么调试32位版本成功运行?

What I fail to understand is, why does the debug 32-bit build run successfully?

请帮助我,因为我已经检查了很多问题,但没有找到任何可行的解决方案.

Please help me out as I have already checked many questions but have not found any feasible solution.

推荐答案

谢谢您回答我的问题.我终于解决了,这是解决方案:-

Thankyou for responding to my question. I have finally solved it and here is the solution:-

Mine是基于Qt的VC ++解决方案,该应用程序依赖于某些第三方dll&库. 我的任务是为我的应用程序提供64位支持,为此我在64位OS中构建了Qt和3rd party dlls& libs.

Mine was a Qt based VC++ solution, the app depended on some 3rd party dlls & libs. My task was to provide 64bit support to my application for which I had build Qt and 3rd party dlls&libs in 64 bit OS.

当我在调试64位配置中尝试运行我的应用程序时遇到CRT错误.即使将以下CRT复制到应用程序的bin文件夹中,该错误仍然存​​在

I got the CRT error when I tried runnig my app in debug 64 bit config. The error persisted even after I had copied the following CRTs to bin folder of my application

redist\Debug_NonRedist\amd64\Microsoft.VC90.DebugCRT:

  1. Microsoft.VC90.DebugCRT.manifest
  2. msvcm90d.dll
  3. msvcp90d.dll
  4. msvcr90d.dll
  1. Microsoft.VC90.DebugCRT.manifest
  2. msvcm90d.dll
  3. msvcp90d.dll
  4. msvcr90d.dll

Microsoft.VC90.DebugOpenMP:

  1. vcomp90d.dll

将上述CRT粘贴到存在Qt和第三方库的相应bin文件夹中后,我便能够以调试64位模式成功启动我的应用程序.

I was able to launch my app successfully in debug 64 bit mode when I pasted the above CRTs in the corresponding bin folders where Qt and 3rd party libraries were present.

这篇关于“应用程序配置不正确";并且“并排配置不正确",并且“并排配置不正确".运行VS2008 64位调试版本的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆