DLL 無法為 MSI 安裝程式執行

DLL 無法為 MSI 安裝程式執行

dll無法運行

我猜這是 Windows Installer 的問題。我嘗試過重新啟動服務但沒有效果。我無法安裝任何以.msi。有時我會收到這樣的錯誤訊息:

在此輸入影像描述

事件檢視器日誌:

Python 安裝程式:

產品:Python 2.7.3 - 錯誤 1723。無法執行完成此安裝所需的 DLL。請聯絡您的支援人員或軟體包供應商。操作 CheckDir,條目:_CheckDir@4,庫:C:\Users\x\AppData\Local\Temp\MSI570C.tmp

SSDLife安裝程序:

產品:SSDlife Pro - 錯誤 1723。無法執行完成此安裝所需的 DLL。請聯絡您的支援人員或軟體包供應商。操作 WIX_TestVersion,條目:WIX_TestVersion,庫:C:\Users\x\AppData\Local\Temp\MSIA32E.tmp

搜尋錯誤 1723:如果您的 Windows Installer 版本過時,可能會發生此錯誤

我獲得了幾個 Windows Installer 鏈接,但它們的支援作業系統列表中都沒有 Windows 7。

https://www.microsoft.com/en-us/download/details.aspx?id=25

https://www.microsoft.com/en-us/download/details.aspx?id=8483&WT.mc_id=MSCOM_EN_US_DLC_DETAILS_131Z4ENUS22007

Windows(7 x64) 是最新的。

也嘗試了這個修復:http://support.microsoft.com/mats/Program_Install_and_Uninstall

但並沒有發現任何問題。

答案1

我也遇到了這個問題。阿列克謝·伊万諾夫的回答並沒有給我太大幫助,但它確實激發了我去調查C:\Users\x\AppData\Local\Temp

像往常一樣,錯誤訊息只有一半用處。就我而言,DLL 並沒有丟失——安裝程式沒有存取該資料夾的權限。我沒有嘗試以管理員身份運行安裝程式——考慮到我已經在使用管理員帳戶並且期望 UAC 來處理權限提升,這對我來說沒有意義。不管怎樣,就像 Windows 中的許多事情一樣,這整件事對我來說有點神秘。

儘管如此,在轉到資料Properties > SecurityC:\Users\x\AppData\Local\Temp並給出EveryoneFull control允許,以前失敗的安裝程式現在可以工作了!萬歲!由於Everyone已經擁有ReadWrite訪問,我懷疑Full control還添加了必要的Execute權限。

現在我想知道的是,這首先是如何發生的,以及目錄的正確權限應該是什麼。

答案2

一個簡單的解決方法是以管理員身份運行命令 shell(只需搜尋 cmd.exe,然後右鍵單擊 -> 以管理員身份運行),然後轉到 MSI 包的位置並運行msiexec /i packagename.msi.這對我有用。

答案3

您的系統肯定缺少所需的 DLL。

在您描述的兩種情況下,Windows Installer 會嘗試執行位於 DLL 中的自訂操作。這些 .tmp 檔案:C:\Users\x\AppData\Local\Temp\MSI570C.tmp實際上C:\Users\x\AppData\Local\Temp\MSIA32E.tmp是從 MSI 中提取的 DLL 檔案。

但由於某種原因,它無法載入 DLL。

最重要的是找出缺少哪個DLL。當螢幕上顯示錯誤訊息時,請前往臨時目錄並查看臨時 DLL 檔案是否仍然存在。如果存在,則使用 DLL 副檔名複製它。然後,要找出所需的 DLL 中缺少哪一個,您可以使用depends.exeVisual Studio 中的實用程式。

如果臨時檔案已被刪除,則獲取 DLL 的唯一方法是將其從套件中提取,從Binary桌子。

我有兩個最可能的候選者:缺少 Visual C++ 運行時或缺少 .Net 運行時。然而,這只是猜測…

答案4

這些解決方案都不適合我,但是當我直接進入下載資料夾時,右鍵單擊我想要執行的安裝的圖標,然後單擊“以管理員身份運行”,它安裝時沒有任何錯誤訊息。

相關內容