在尝试启动某些应用程序时出现“代码执行无法继续,因为未找到 MSVCR110.dll”错误后,我重新安装Microsoft Visual C++ 2012并重新启动。没用。然后我Microsoft Visual C++ 2015, 2017 and 2019从微软网站安装并重新启动。没有工作:仍然收到相同的错误消息。
我在安装 Microsoft Visual C++ 可再发行组件时从未遇到过问题。因此,我相信您的 PC 上存在一种特殊情况,使安装程序无法将该文件放入c:\windows\system32或c:\windows\SysWow64. 如果我是对的,您可能也会错过其他 MS VC++ DLL,即使您还没有注意到这一点。
例如,病毒扫描程序可能会阻止安装软件在 Windows 系统目录中安装任何内容,或者可能会认为该 DLL 是恶意的。因此,我首先会尝试暂时禁用病毒扫描程序并为 VC++ 2012 运行时的两个变体(32 位和 64 位)执行安装程序。您可以从此处下载这两个变体(该文件来自 Visual C++ 2012)。
如果安装程序拒绝安装运行时,因为它已经安装,请先尝试卸载当前版本,然后再次运行安装程序。
当病毒扫描程序仍处于禁用状态时,请检查有问题的 DLL 现在是否分别位于c:\windows\system32和c:\windows\SysWow64中。然后重新启用病毒扫描程序并尝试启动有问题的应用程序。如果仍然出现错误,请再次检查文件是否仍然存在于 Windows 系统目录中。如果他们不这样做,病毒扫描程序会在您重新启用它或应用程序想要访问它们时将它们从那里删除。在这种情况下,您必须将病毒扫描程序中的文件列入白名单。
如果您没有找到(或不记得)阻止这些文件被复制到 Windows 系统目录中的设置或软件组件,您可以应用更“手动”的方法:从我上面链接的页面,您可以下载vcredist_x86.exe和vcredist_x64.exe. 虽然这两个文件都是可执行文件,但您可以手动解压缩它们(无需运行它们)。例如,WiX 工具集可以做到这一点,至少对于您感兴趣的 2012 版本是这样,并且可能还有一些其他加壳器能够做到这一点。
解压这些可执行文件后,您将在解压它们的文件夹中看到您想要的 DLL。从那里,将它们手动复制到相应的 Windows 系统目录中,然后尝试您现在是否可以启动有问题的应用程序。再次强调,如果您在复制文件后立即可以在 Windows 系统目录中看到这些文件,但稍后它们又消失了,则您必须找出系统上的哪个软件组件或设置导致它们被删除。
因为那个 VS 没有安装重新分发包的两个体系结构。同时安装(x86 和 x64),您的问题就会消失。
https://www.microsoft.com/en-us/download/details.aspx?id=30679#
在许多情况下,确保
MSVCR110.dll
应用程序能够找到它的最佳方法是将其复制到与可执行文件所在的文件夹相同的文件夹中。这就是我在没有其他方法时所做的事情。请注意,DLL 有两个版本:64 位和 32 位。您应该使用与可执行文件具有相同体系结构的 DLL 版本。
许多产品都在其文件夹中安装了正确的 DLL,以便独立于已安装(或未安装)的版本。检查问题产品的某些安装文件夹中是否有此 DLL。
尝试运行
sfc /scannow
,然后重新安装 * Microsoft Visual C++ 2012 更新 4* 32 位和 64 位,如果它要求您卸载,请执行此操作,然后重新安装。您可能还需要重新安装该应用程序。将丢失的 dll(msvcp*.dll 和 msvr*.dll)复制到System32或SysWOW64可能会有所帮助。我在安装 Microsoft Visual C++ 可再发行组件时从未遇到过问题。因此,我相信您的 PC 上存在一种特殊情况,使安装程序无法将该文件放入
c:\windows\system32
或c:\windows\SysWow64
. 如果我是对的,您可能也会错过其他 MS VC++ DLL,即使您还没有注意到这一点。例如,病毒扫描程序可能会阻止安装软件在 Windows 系统目录中安装任何内容,或者可能会认为该 DLL 是恶意的。因此,我首先会尝试暂时禁用病毒扫描程序并为 VC++ 2012 运行时的两个变体(32 位和 64 位)执行安装程序。您可以从此处下载这两个变体(该文件来自 Visual C++ 2012)。
如果安装程序拒绝安装运行时,因为它已经安装,请先尝试卸载当前版本,然后再次运行安装程序。
当病毒扫描程序仍处于禁用状态时,请检查有问题的 DLL 现在是否分别位于
c:\windows\system32
和c:\windows\SysWow64
中。然后重新启用病毒扫描程序并尝试启动有问题的应用程序。如果仍然出现错误,请再次检查文件是否仍然存在于 Windows 系统目录中。如果他们不这样做,病毒扫描程序会在您重新启用它或应用程序想要访问它们时将它们从那里删除。在这种情况下,您必须将病毒扫描程序中的文件列入白名单。如果您没有找到(或不记得)阻止这些文件被复制到 Windows 系统目录中的设置或软件组件,您可以应用更“手动”的方法:从我上面链接的页面,您可以下载
vcredist_x86.exe
和vcredist_x64.exe
. 虽然这两个文件都是可执行文件,但您可以手动解压缩它们(无需运行它们)。例如,WiX 工具集可以做到这一点,至少对于您感兴趣的 2012 版本是这样,并且可能还有一些其他加壳器能够做到这一点。解压这些可执行文件后,您将在解压它们的文件夹中看到您想要的 DLL。从那里,将它们手动复制到相应的 Windows 系统目录中,然后尝试您现在是否可以启动有问题的应用程序。再次强调,如果您在复制文件后立即可以在 Windows 系统目录中看到这些文件,但稍后它们又消失了,则您必须找出系统上的哪个软件组件或设置导致它们被删除。