在我的计算机上相同的dll文件是x64,但在另一台计算机上它们是x86,奇怪

在我的计算机上相同的dll文件是x64,但在另一台计算机上它们是x86,奇怪,dll,x86,64-bit,dependency-walker,Dll,X86,64 Bit,Dependency Walker,我有一个程序,它依赖于MSVCP100D.DLL和MSVCR100D.DLL,x64版本 这是我的电脑中的屏幕截图: 当我把这个程序复制到我朋友的计算机上时,它无法运行,因为没有这两个文件。然后我把2个dll文件复制到他的电脑上 但它在执行程序时报告了一些错误,当我使用dependency walker进行检查时,我发现了一件非常奇怪的事情。这是他的截图: 为什么在我的电脑里是“x64”,在他的电脑里是“x86”?如何修复它 更新 我朋友的系统也是win7 x64。最后,几个小时后,我们修

我有一个程序,它依赖于
MSVCP100D.DLL
MSVCR100D.DLL
,x64版本

这是我的电脑中的屏幕截图:

当我把这个程序复制到我朋友的计算机上时,它无法运行,因为没有这两个文件。然后我把2个dll文件复制到他的电脑上

但它在执行程序时报告了一些错误,当我使用dependency walker进行检查时,我发现了一件非常奇怪的事情。这是他的截图:

为什么在我的电脑里是“x64”,在他的电脑里是“x86”?如何修复它


更新


我朋友的系统也是win7 x64。

最后,几个小时后,我们修复了它。有太多奇怪的事情

首先。我的系统是win7 x64

这里以
MSVCP100D.DLL
为例。我的计算机中有两个不同的MSVCP100D.DLL,一个在
windows/system32
中,一个在
windows/SysWOW64
中。它们有不同的尺寸

请看屏幕截图:

但在《一切》中,它们的尺寸都是一样的(甚至是相同的修改日期),我认为它们是一样的

然后我通过一个叫做QQ的即时通讯软件从system32发送dll

我从
windoes/system32
中拖动了文件,文件大小为991K,但QQ显示的大小为“726K”:

但是,如果我将文件复制到另一个目录,例如
D:\
,然后再次发送,则大小正确为“991K”


最后,我将这些dll文件复制到另一个目录中,并将它们打包成zip文件,它们被正确发送,程序在我朋友的计算机上运行良好。

你有一台64位计算机,他有一台32位计算机。文件大小不同,这些文件不同。你应该阅读有关Windows 64位文件重定向的内容,