Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual c++ 如果包含路径,dumpbin实用程序将给出不同的结果_Visual C++_Dumpbin - Fatal编程技术网

Visual c++ 如果包含路径,dumpbin实用程序将给出不同的结果

Visual c++ 如果包含路径,dumpbin实用程序将给出不同的结果,visual-c++,dumpbin,Visual C++,Dumpbin,调查安装了Visual Studio IOP 2013的Windows 10/64位机箱上DLL的位宽度 dumpbin /headers C:\windows\system32\msvcp120.dll | findstr machine 报告:8664机器(x64) 但是 报告: 14C机器(x86)32位字机器 我在几台机器上试过,结果都一样。发生了什么?这是正在工作的文件系统重定向程序,当您查看c:\windows\system32目录时,它在64位操作系统上始终处于活动状态。您实际上

调查安装了Visual Studio IOP 2013的Windows 10/64位机箱上DLL的位宽度

dumpbin /headers C:\windows\system32\msvcp120.dll | findstr machine
报告:8664机器(x64)

但是

报告: 14C机器(x86)32位字机器


我在几台机器上试过,结果都一样。发生了什么?

这是正在工作的文件系统重定向程序,当您查看c:\windows\system32目录时,它在64位操作系统上始终处于活动状态。您实际上看到的是c:\windows\syswow64\msvcp120.dll,因此机器类型是x86。与大多数用户一样,主要是由于运行32位版本的dumpbin.exe造成的。只有64位版本(vc/bin/amd64目录)不会被重定向


我有点困惑,发现了重定向器的一个方面,我以前不知道。它只重定向相对路径。所以。\msvcp120.dll或..\system32\msvcp120.dll。但不是完整路径,如c:\windows\system32\msvcp120.dll。驱动器号实际上并不重要。

谢谢,汉斯,这很有道理。我想我使用的是32位版本的dumpbin,因为我使用“x86本机工具命令提示符”来运行这些命令。如果我明确使用64位版本(“C:\Program Files(x86)\Microsoft Visual Studio 12.0\VC\bin\amd64\dumpbin.exe”),则无论从何处运行,\windows\system32版本和\windows\syswon64版本,它都会正确报告64位。
cd C:\windows\system32\
dumpbin /headers .\msvcp120.dll | findstr machine