Windows

Windows 2012 及更高版本中是否預設存在 msvcr71.dll?

  • November 20, 2020

提供一些關於這個問題的背景。我們將 windows zip 實用程序與我們的產品一起打包。這個 zip 實用程序是從我們的一個產品腳本中呼叫的,用於打包一些日誌文件。我們的一位客戶提出了一個問題,即當他們執行呼叫 zip.exe 的腳本時,他們會彈出此消息——“程序無法啟動,因為您的電腦中缺少 MSVCR71.dll”。我檢查了依賴walker 工具中的zip.exe,果然,我可以看到對msvcr71.dll 的依賴。客戶告訴他們可以通過手動將 MSVCR71.dll 文件放在路徑 C:\Windows\SysWOW64 中或安裝 Windows 7 redists 來克服這個問題。

但是,我創建了一個新的 Windows 2012 VM,沒有安裝任何其他軟體,並且我可以在路徑 C:\Windows\SysWOW64 中看到 msvcr71.dll,並且 zip.exe 執行成功,而沒有抱怨缺少 dll。所以想檢查msvcr71.dll是否預設可用?

不,它不是 Windows 發行版的一部分。如果您的應用程序需要來自 .NET Framework 1.1 的 msvcr71.dll 文件,安裝程序應將其安裝在應用程序的程序文件目錄中,而不是 Windows system32 或 SYSWOW64 目錄中。

來源:

在 Visual C++ 中重新分發共享 C 執行時組件

https://support.microsoft.com/en-us/help/326922/redistribution-of-the-shared-c-runtime-component-in-visual-c

引用自:https://serverfault.com/questions/1004476