Ste*_*eve 11 c++ windows dll dependencies
如果编译库中缺少C++运行时msvcr80.dll,是否有任何方法可以确定用于创建库的版本或使其在更高版本的msvcr80.dll上运行?
bk1*_*k1e 13
VC80 SP1 CRT可再发行程序包将安装C运行时的RTM和SP1版本%SystemRoot%\WinSxS
(假设您使用的是Windows XP或Vista; Windows 2000不支持并行程序集).如果安装了VC8,则CRT可再发行组件包中%ProgramFiles%\Microsoft Visual Studio 8\VC\redist
.如果您没有安装VC8,我认为您可以从Microsoft.com下载CRT可再发行组件包.
另外,要确切了解使用VC8或VC9构建的二进制文件所需的CRT版本(例如RTM与SP1),您可以提取清单:
mt.exe -inputresource:mydll.dll;#1 -out:mydll.dll.manifest
Run Code Online (Sandbox Code Playgroud)
寻找这样的东西:
<assemblyIdentity type="win32" name="Microsoft.VC90.CRT" version="9.0.21022.8" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b">
</assemblyIdentity>
Run Code Online (Sandbox Code Playgroud)
我的可执行文件需要CRT版本9.0.21022.8.此版本号也嵌入在WinSxS
子目录名称中(不幸的是它被哈希包围):
D:>dir c:\windows\WinSxS\*VC90.CRT*
12/14/2007 02:16 AM <DIR> amd64_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.21022.8_none_750b37ff97f4f68b
12/14/2007 02:00 AM <DIR> x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.21022.8_none_bcb86ed6ac711f91
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
7490 次 |
最近记录: |