当前位置: 首页 > 知识库问答 >
问题:

Windows 7,64位,DLL问题

屈浩波
2023-03-14

我对我们的可执行文件有问题。我正在Windows ;7 64位开发盒上运行这个C++32位可执行文件,该开发盒还包含所有Microsoft应用程序(Visual Studio 2008+2010、TFS、SDK、Microsoft Office)...它还运行得很好。

现在,我得到了相同程序的客户端安装,并被要求使用干净的Windows ;7安装来测试它。因此,我得到了一个Windows ;7 64位VMware并将其更新到Windows ;7 SP 1(与我的开发人员箱正在调优的版本完全相同)。但是,虽然在我的开发人员框中,一切都很好,但该程序不能与VMware(30天试用版)框一起工作。

x86依赖项遍历器告诉我缺少以下DLL文件:

  • api-ms-win-core-com-l1-1-0.dll
  • api-ms-win-core-winrt-error-l1-1-0.dll
  • api-ms-win-core-winrt-l1-1-0.dll
  • api-ms-win-core-winrt-robuffer-l1-1-0.dll
  • api-ms-win-core-winrt-string-l1-1-0.dll
  • api-ms-win-shcore-scaling-l1-1-0.dll
  • dcomp.dll
  • gpsvc.dll
  • ieshims.dll

我在谷歌上搜索了那些API-MS-WIN-...DLL文件并发现它们实际上应该已经是Windows ;7的一部分(一些声称属于Windows ;8和Windows Server 2012的站点)。

我已经尝试了我找到的建议修复程序,它们是:

  • 正在运行“sfc/scannow”
  • 安装Visual Studio 2008 SP1运行时可执行文件

有什么办法解决这个问题吗?我试图在微软网页上找到一个合适的下载/修复程序,但我失败了。

在解决了我的问题后,我想报告我的发现,我不能张贴这作为一个答案,因为问题已经关闭。

实际上,依赖项Walker工具报告丢失的所有DLL文件,即

* API-MS-WIN-CORE-...

它的要旨:正如别人所说的,这个工具现在已经有点过时了,并不总是能在较新的操作系统上正常工作。因此,要保持警惕,不要被“api-ms-win-core-com-l1-1-0.dll”所误导,……问题可能完全出在别处。

共有1个答案

尚楚
2023-03-14

Visual Studio 2015

Visual Studio 2013

Visual Studio 2010

 类似资料:
  • 我在tcnative-1.dll不能加载AMD 64位.dll在IA 32位平台上,除了这是相反的,当运行tomcat-7.0.47下面是我的详细信息和日志。我已经尝试跟随上面发布的所有内容,但没有运气...请帮助我! 此外,我还下载了64位JRE,并仔细检查了我的java版本 C:\users\franklu>java-version java version“1.7.0_55”java(TM)

  • 我很难尝试将我的.jar库转换为.dll并使其通过IKVM框架工作。我编写了一个Java库,由于它已经在几个Java项目中进行了成功的测试,所以运行良好,但我强烈需要.NET的.dll。 启动命令时: 一切都是好的(我也尝试了一个主文件,以确定:它可以工作)。 但是,当我键入: 我得到了很多警告,但它仍然创建了.dll文件。很重要的一点是,所有的警告都与我在项目中没有使用的库有关,但我很确定我在M

  • 如果操作系统是64位,我想安装一个32位的DLL到文件夹和64位的DLL到文件夹并分别注册它们。如果是32位操作系统,我只想将文件复制到正常程序文件夹并注册。 如何在Inno安装程序中执行此操作?64位DLL也会被64位程序注册吗? 这是我到目前为止的代码。它在 32 位操作系统上工作正常,但在 64 位操作系统上,它会转储 中的两组文件。 我已经看过示例,但它告诉如何进行32位或64位安装,而不

  • 我们有一个C#可执行文件,它加载一个用C++编写的32bit dll,它动态加载另一个32bit dll(第一个dll是包装器)。 当它构建在32位机器上(使用VS toolset v100)时,它都能正常工作。

  • 问题内容: 使用Java本机接口时,我遇到了一个导致此错误的问题。我相信这是因为我使用MinGW编译了.dll,而我的系统是64位的,因此我的Java运行于64位,而MinGW编译为32位的.dll。无论如何,有没有强制我的Java在32位上运行? 问题答案: 您将必须安装32位JVM,然后才能运行代码。 如果要分发应用程序,则将要构建DLL的32位和64位版本。然后,使用以下技术来加载正确的DL

  • 有些程序似乎缺少DLL文件,但即使在手动下载文件后,也会出现入口点错误。在使用依赖步行器之后(http://www.dependencywalker.com)对于exe文件,除这两个文件外,找到并下载了更多缺少的DLL文件。 API-MS-WIN-CORE-SHUTDOWN-L1-1-1。动态链接库 EXT-MS-WIN-NTUSER-UICONTEXT-EXT-L1-1-0.DLL 不知道在哪里