首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在调试模式中找不到msvcr90d.dll

在调试模式中找不到msvcr90d.dll
EN

Stack Overflow用户
提问于 2009-07-19 18:01:25
回答 7查看 18.2K关注 0票数 11

我找到了MSVCR90D.dll未在Visual C++ 2008的调试模式中找到问题,但没有一个给出的答案真的能回答这个问题。它们中的大多数指向关闭增量链接,但没有解释错误的真正原因以及如何修复而不关闭增量链接。

我想提一下,我的情况和原来的问题有点不同。我正在使用Visual 2008中的C++编译器,但在Qt中,而不是在Visual中。

有没有人?

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2009-07-19 20:08:37

下面是编译器的输出。奇怪的是,第二次运行build成功了。然而,我怀疑这个问题可能是由于运行mt.exe时出现了这个错误,它负责将信息从清单嵌入到可执行的.

代码语言:javascript
复制
Generating Code...
link /LIBPATH:"c:\Qt\4.5.2-vc\lib" /NOLOGO /DEBUG /MANIFEST /MANIFESTFILE:"debug\formExtractor.intermediate.manifest" /SUBSYSTEM:WINDOWS "/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" /OUT:debug\formExtractor.exe @.\nmD932.tmp
mt.exe -nologo -manifest "debug\formExtractor.intermediate.manifest" -outputresource:debug\formExtractor.exe;1
'mt.exe' is not recognized as an internal or external command,
operable program or batch file.
NMAKE : fatal error U1077: 'mt.exe' : return code '0x1'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\BIN\nmake.exe"' : return code '0x2'
Stop.
Exited with code 2.

更新

在链接过程中未能运行mt.exe确实是问题的原因。我将path添加到Windows (C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin)到PATH环境变量中,现在我能够运行可执行文件。

对各种答复的评论;

@Shay

从sxstrace输出的txt文件为空。不知道为什么。但是,应用程序日志中有以下信息:

代码语言:javascript
复制
Faulting application formExtractor.exe, version 0.0.0.0, time stamp 0x4a638ee1, faulting module MSVCR90D.dll, version 6.0.6002.18005, time stamp 0x49e03824, exception code 0xc0000135, fault offset 0x0006f04e, process id 0xf68, application start time 0x01ca08ba801ac5cf.

版本6.0.6002.18005?

这是什么鬼东西?

@Kirill V. Lyadvinsky

中找到由msvcr90d.dll文件使用的qtwebkit4.dll

c:\windows\winsxs\x86_microsoft.vc90.debugcrt_1fc8b3b9a1e18e3b_9.0.30729.1_none_bb1f6aa1308c35eb\MSVCR90D.DLL

但没有找到(另一个版本的?) msvcr90d.dll文件,直接由可执行文件链接。然而,DW似乎并没有在任何地方显示它的版本,是吗?

formExtractor.intermediate.manifest文件竞赛

代码语言:javascript
复制
<?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' />
      </requestedPrivileges>
    </security>
  </trustInfo>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*' />
    </dependentAssembly>
  </dependency>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type='win32' name='Microsoft.VC90.DebugCRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' />
    </dependentAssembly>
  </dependency>
</assembly>

从清单文件中可以看出,可执行文件链接到的msvcr90d.dll版本与qtwebkit4.dll不同。奇怪的是,两个版本的msvcr90d.dll都存在于以下子文件夹中的c:\windows\winsxs文件夹中

x86_microsoft.vc90.debugcrt_1fc8b3b9a1e18e3b_9.0.21022.8_none_96748342450f6aa2x86_microsoft.vc90.debugcrt_1fc8b3b9a1e18e3b_9.0.30729.1_none_bb1f6aa1308c35eb

有什么想法吗?

@knight666 666

我使用的是Qt框架,我使用的正是我现在使用的编译器,所以我认为这里没有不匹配的地方。此外,Dependency显示缺失的msvcr90d.dll文件被直接链接到到可执行文件,所以我认为它不是任何第三方库的错误。

票数 4
EN

Stack Overflow用户

发布于 2010-08-05 06:53:59

简单地安装VS2008服务包1将修复这个问题,如果这是一个错误,其中的调试CRT是完全缺失的sxs文件夹。

在64位Windows 7上重新安装VS2008和包含VC++项目的解决方案都发生在我身上。当C++程序集在运行时加载时,调试生成会崩溃,并发错误。

在Vista和Win7 (但不是XP)上,SxS错误给出了详细的信息,说明了它尝试了哪些程序集但未能加载--在本例中是VC90.DebugCRT9.0.22.19。我检查了VC程序集的(embedded)清单,确定它包含了对此程序集和版本的引用。

检查sxs目录(%System %\Windows\WinSxS)显示,在并排安装时根本没有安装VC90 DebugCRT!我已经安装了VC++运行时,但这些运行时不包括调试运行时。VS2008的目的是安装调试运行时,但它并不存在。

原来VS2008 不安装的最初发行版是64位VC++ DebugCRT,但安装SP1确实如此。一旦我这样做了,就不会再有运行时异常和并行错误。

票数 11
EN

Stack Overflow用户

发布于 2009-07-19 18:47:08

  1. 您可以使用依赖沃克来找出程序要查找的msvcr90d.dll版本。可能是一些第三方组件链接到某些版本的msvcr90d.dll,但你没有。
  2. 您应该检查manifest.xml文件。尝试删除所有不必要的依赖项。
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1150464

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档