我最近畢業於VS 2015.由於下面解釋的原因,我想避免運行VC++ Redistributables安裝程序。我在我的安裝程序中包含了規定的DLL,用於「應用程序本地」安裝:「msvcR140.dll」在哪裏?它存在嗎?
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 Redistributable的PC上的所有目錄時,我找不到它。它存在嗎? Windows隱藏它嗎?
注1:爲什麼需要避免MS VC++再分發安裝程序:
- 它顯示了作爲一個單獨的安裝在我的WiX的安裝程序。我的市場人口(消費者)非常困惑。
- 當我的軟件被卸載時,還需要卸載VC Redist,這可能會導致併發症。
- 在一些情況下,出現了某種讓PC無法使用的搞砸。我懷疑反覆安裝了VC Redist。發生什麼事是標準用戶不再能夠啓動任何程序。
- VC Redist。我的安裝程序從25MB擴展到40MB,額外的15MB。通過選擇我需要的組件,我將它修剪了10 MB。
- 用於測試以前版本的WiX代碼非常複雜,神祕和難以理解。
- 是的,我瞭解自動更新Windows DLL的好處。但是,具有過期DLL的PC比無法使用的PC更好。
注2:我不能做一個靜態鏈接,我的應用程序是Win32和MFC DLL中的魚龍混雜,我得到的鏈接錯誤。
另一種選擇是通過mergemodule安裝C++運行時文件(從程序文件[(86) ] \ Common Files \ Merge Modules):https://msdn.microsoft.com/en-us/library/ms235299.aspx –
Morten Frederiksen感謝您的回覆。什麼是合併模塊?我如何將它們與WiX一起使用?我不會冒着腐蝕系統的風險嗎? – Pierre
下面是關於如何在您的WiX代碼中包含mergemodule的指南:http://wixtoolset.org/documentation/manual/v3/howtos/redistributables_and_install_checks/install_vcredist.html –