“msvcR140.dll”在哪里?它存在吗?

时间:2017-05-09 15:12:29

标签: visual-studio-2015 wix vcredist

我最近刚毕业到VS 2015.由于下面解释的原因,我想避免运行VC ++ Redistributables安装程序。我在我的安装程序中包含了规定的DLL,用于“app local”安装:

MFC140.DLL
concrt140.dll
msvcp140.dll
vccorlib140.dll
vcruntime140.dll
mfc140u.dll
mfcm140u.dll

这似乎有效。因此,我的应用程序在“原始”PC上安装时运行。

  

我的问题是,我在哪里可以找到msvcr140.dll

这里提到:https://www.visualstudio.com/license-terms/mt228262/。在安装了VC Redistributables的PC上搜索所有目录时,我无法找到它。它存在吗? Windows是否隐瞒了它?

注1 :为什么我需要避免使用MS VC ++ Redistributables安装程序:

  • 它在我的WiX安装程序中显示为单独安装。这对我的市场人群(消费者)来说非常困惑。
  • 卸载我的软件时,还需要卸载VC Redist。这可能会导致并发症。
  • 在某些情况下,出现了一些使PC无法运行的搞砸事件。我怀疑重复安装了VC Redist。发生的事情是标准用户不再能够启动任何程序。
  • VC Redist。我的安装程序从25MB膨胀到40MB,额外增加了15MB。通过选择我需要的组件,我将它修剪了10 MB。
  • 用于测试先前版本的WiX代码是复杂,晦涩且难以理解的。
  • 是的,我了解自动更新Windows DLL的好处。但是,具有过时DLL的PC优于不可用的PC。

注意2 :我无法进行静态链接,我的应用程序是Win32和MFC DLL的混合包,我收到链接器错误。

1 个答案:

答案 0 :(得分:3)

由于Visual Studio 2015中的introduction of the Universal CRT,“msvcr140.dll”似乎“缺失”。

另请参阅this answerthis one

查看位于Program Files (x86)\Common Files\Merge Modules\Microsoft_VC140_CRT_x64.msm的官方合并模块,Visual C ++ 2015 CRT包含以下文件:

api-ms-win-core-console-l1-1-0.dll
api-ms-win-core-datetime-l1-1-0.dll
api-ms-win-core-debug-l1-1-0.dll
api-ms-win-core-errorhandling-l1-1-0.dll
api-ms-win-core-file-l1-1-0.dll
api-ms-win-core-file-l1-2-0.dll
api-ms-win-core-file-l2-1-0.dll
api-ms-win-core-handle-l1-1-0.dll
api-ms-win-core-heap-l1-1-0.dll
api-ms-win-core-interlocked-l1-1-0.dll
api-ms-win-core-libraryloader-l1-1-0.dll
api-ms-win-core-localization-l1-2-0.dll
api-ms-win-core-memory-l1-1-0.dll
api-ms-win-core-namedpipe-l1-1-0.dll
api-ms-win-core-processenvironment-l1-1-0.dll
api-ms-win-core-processthreads-l1-1-0.dll
api-ms-win-core-processthreads-l1-1-1.dll
api-ms-win-core-profile-l1-1-0.dll
api-ms-win-core-rtlsupport-l1-1-0.dll
api-ms-win-core-string-l1-1-0.dll
api-ms-win-core-synch-l1-1-0.dll
api-ms-win-core-synch-l1-2-0.dll
api-ms-win-core-sysinfo-l1-1-0.dll
api-ms-win-core-timezone-l1-1-0.dll
api-ms-win-core-util-l1-1-0.dll
api-ms-win-crt-conio-l1-1-0.dll
api-ms-win-crt-convert-l1-1-0.dll
api-ms-win-crt-environment-l1-1-0.dll
api-ms-win-crt-filesystem-l1-1-0.dll
api-ms-win-crt-heap-l1-1-0.dll
api-ms-win-crt-locale-l1-1-0.dll
api-ms-win-crt-math-l1-1-0.dll
api-ms-win-crt-multibyte-l1-1-0.dll
api-ms-win-crt-private-l1-1-0.dll
api-ms-win-crt-process-l1-1-0.dll
api-ms-win-crt-runtime-l1-1-0.dll
api-ms-win-crt-stdio-l1-1-0.dll
api-ms-win-crt-string-l1-1-0.dll
api-ms-win-crt-time-l1-1-0.dll
api-ms-win-crt-utility-l1-1-0.dll
concrt140.dll
msvcp140.dll
ucrtbase.dll
vccorlib140.dll
vcruntime140.dll