在64位的Windows系统上缺少的dll文件

14 浏览
0 Comments

在64位的Windows系统上缺少的dll文件

我有一个使用一些vc++编译的Win32 dll的.NET应用程序。它在32位的Win上运行得很好,但在64位上有问题:"无法加载DLL 'xyz':找不到指定的模块。(HRESULT异常:0x8007007E)"

使用依赖性查找器我发现缺少以下的dll:MSVCP100.DLL, MSVCR100.DLL, GDIPLUS.DLL, GPSVC.DLL, IESHIMS.DLL

我该如何将它们安装到我的64位Win上?我应该把它们放在哪里?我需要注册它们吗?还是...?

请注意,我的项目是针对x86平台编译的,并且作为一个32位应用程序从Program Files (x86)文件夹中运行。我的dll是通过Visual Studio 2010中的Visual C++编译为Win32的。

请注意,由于其他原因,获取我的dll的64位版本是不可能的,因此这不是一个解决方案。

谢谢!

0
0 Comments

缺失dll在64位Windows上的问题的出现原因是整个过程应该是32位或64位。如果无法在64位中编译所有依赖库,则需要在32位中运行.NET项目。为此,创建x86配置(默认为Any CPU)并在此配置中构建.NET项目。

您还需要在目标计算机上安装VC++ 2010可再发行包,具有正确的位数,例如x86。可以从Microsoft网站下载此软件包。

如果程序有安装包,则应将VC++可再发行软件包作为单个文件或合并模块添加到其中。

一切都是以x86构建的,这不是问题。问题在于这些dll文件。

谢谢。VC++ 2010可再发行软件包有所帮助。

0
0 Comments

缺少dll文件的问题是在64位Windows操作系统上出现的。出现这个问题的原因是目标机器上没有安装一些运行时的dll文件。解决这个问题的方法是在目标机器上安装以下几个dll文件:

- .NET运行时环境,版本为4.0,可以从微软官网下载安装。

- Visual Studio可再发行包,这个包可能只适用于C++应用程序,但是如果仅仅安装.NET还不够的话,也可以尝试安装这个包。

以上是解决缺少dll文件问题的方法。

0