2017-05-26 39 views
0

我編寫了一個Wix Toolset安裝程序來安裝需要vC++ redistributable(x86)2015的應用程序。一切正常,但vcredlist_x86.exe啓動時,它會安裝Package太慢了,大約需要六分鐘!Wx工具集安裝vC++ redistributable(x86)2015太慢

如果我運行在獨立模式下vcredlist,它仍然需要六分鐘的時間線顯示:

[1190:1364][2017-05-29T10:56:06]i001: Burn v3.7.2829.0, Windows v6.1 (Build 7601: Service Pack 1), path: D:\TestApplication\MyInstaller\vcredlist\vcredist_x86.exe, cmdline: '/install /log install.log -burn.unelevated BurnPipe.{5745A989-148E-49D2-9BAA-882CBAF76EC9} {C40DCBEA-3CC3-401E-88A3-E0685CD9D368} 4692' 
[1190:1364][2017-05-29T10:56:06]i000: Setting string variable 'WixBundleLog' to value 'D:\TestApplication\MyInstaller\vcredlist\install.log' 
[1190:1364][2017-05-29T10:56:06]i000: Setting string variable 'WixBundleOriginalSource' to value 'D:\TestApplication\MyInstaller\vcredlist\vcredist_x86.exe' 
[1190:1364][2017-05-29T10:56:06]i000: Setting string variable 'WixBundleName' to value 'Microsoft Visual C++ 2015 Redistributable (x86) - 12.0.30501' 
[1190:1364][2017-05-29T10:56:06]i100: Detect begin, 2 packages 
[1190:1364][2017-05-29T10:56:06]i101: Detected package: vcRuntimeMinimum_x86, state: Present, cached: Complete 
[1190:1364][2017-05-29T10:56:06]i101: Detected package: vcRuntimeAdditional_x86, state: Present, cached: Complete 
[1190:1364][2017-05-29T10:56:06]i052: Condition 'VersionNT >= v6.0 OR (VersionNT = v5.1 AND ServicePackLevel >= 2) OR (VersionNT = v5.2 AND ServicePackLevel >= 1)' evaluates to true. 
[1190:1364][2017-05-29T10:56:06]i199: Detect complete, result: 0x0 
[1190:1364][2017-05-29T10:56:46]i200: Plan begin, 2 packages, action: Install 
[1190:1364][2017-05-29T10:56:46]i201: Planned package: vcRuntimeMinimum_x86, state: Present, default requested: Present, ba requested: Present, execute: None, rollback: None, cache: No, uncache: No, dependency: Register 
[1190:1364][2017-05-29T10:56:46]i201: Planned package: vcRuntimeAdditional_x86, state: Present, default requested: Present, ba requested: Present, execute: None, rollback: None, cache: No, uncache: No, dependency: Register 
[1190:1364][2017-05-29T10:56:46]i299: Plan complete, result: 0x0 
[1190:1364][2017-05-29T10:56:46]i300: Apply begin 
[1254:1CC0][2017-05-29T11:02:52]w308: Automatic updates could not be paused due to error: 0x80080005. Continuing... 
[1254:1CC0][2017-05-29T11:02:52]i360: Creating a system restore point. 
[1254:1CC0][2017-05-29T11:02:57]i361: Created a system restore point. 
[1254:1CC0][2017-05-29T11:02:57]i370: Session begin, registration key: SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{f65db027-aff3-4070-886a-0d87064aabb1}, options: 0x7, disable resume: No 
[1254:1CC0][2017-05-29T11:02:57]i000: Caching bundle from: 'C:\Users\costanzo\AppData\Local\Temp\{f65db027-aff3-4070-886a-0d87064aabb1}\.be\vcredist_x86.exe' to: 'C:\ProgramData\Package Cache\{f65db027-aff3-4070-886a-0d87064aabb1}\vcredist_x86.exe' 
[1254:1CC0][2017-05-29T11:02:57]i320: Registering bundle dependency provider: {f65db027-aff3-4070-886a-0d87064aabb1}, version: 12.0.30501.0 
[1254:1CC0][2017-05-29T11:02:57]i371: Updating session, registration key: SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{f65db027-aff3-4070-886a-0d87064aabb1}, resume: Active, restart initiated: No, disable resume: No 
[1254:1CC0][2017-05-29T11:02:57]i325: Registering dependency: {f65db027-aff3-4070-886a-0d87064aabb1} on package provider: Microsoft.VS.VC_RuntimeMinimumVSU_x86,v12, package: vcRuntimeMinimum_x86 
[1254:1CC0][2017-05-29T11:02:57]i325: Registering dependency: {f65db027-aff3-4070-886a-0d87064aabb1} on package provider: Microsoft.VS.VC_RuntimeAdditionalVSU_x86,v12, package: vcRuntimeAdditional_x86 
[1254:1CC0][2017-05-29T11:02:57]i372: Session end, registration key: SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{f65db027-aff3-4070-886a-0d87064aabb1}, resume: ARP, restart: None, disable resume: No 
[1254:1CC0][2017-05-29T11:02:57]i371: Updating session, registration key: SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{f65db027-aff3-4070-886a-0d87064aabb1}, resume: ARP, restart initiated: No, disable resume: No 
[1190:1364][2017-05-29T11:02:57]i399: Apply complete, result: 0x0, restart: None, ba requested restart: No 
[1190:1364][2017-05-29T11:07:50]i500: Shutting down, exit code: 0x0 
[1190:1364][2017-05-29T11:07:50]i410: Variable: ServicePackLevel = 1 
[1190:1364][2017-05-29T11:07:50]i410: Variable: VersionNT = 6.1.0.0 
[1190:1364][2017-05-29T11:07:50]i410: Variable: WixBundleAction = 5 
[1190:1364][2017-05-29T11:07:50]i410: Variable: WixBundleElevated = 1 
[1190:1364][2017-05-29T11:07:50]i410: Variable: WixBundleInstalled = 0 
[1190:1364][2017-05-29T11:07:50]i410: Variable: WixBundleLog = D:\TestApplication\MyInstaller\vcredlist\install.log 
[1190:1364][2017-05-29T11:07:50]i410: Variable: WixBundleManufacturer = Microsoft Corporation 
[1190:1364][2017-05-29T11:07:50]i410: Variable: WixBundleName = Microsoft Visual C++ 2015 Redistributable (x86) - 12.0.30501 
[1190:1364][2017-05-29T11:07:50]i410: Variable: WixBundleOriginalSource = D:\TestApplication\MyInstaller\vcredlist\vcredist_x86.exe 
[1190:1364][2017-05-29T11:07:50]i410: Variable: WixBundleProviderKey = {f65db027-aff3-4070-886a-0d87064aabb1} 
[1190:1364][2017-05-29T11:07:50]i410: Variable: WixBundleTag = 
[1190:1364][2017-05-29T11:07:50]i410: Variable: WixBundleVersion = 12.0.30501.0 
[1190:1364][2017-05-29T11:07:50]i007: Exit code: 0x0, restarting: No 

可能是什麼原因,以及如何這個問題可以得到解決?

+0

您在哪個操作系統上運行安裝程序? – bradfordrg

+0

Windows 7專業版 –

+0

要深入瞭解VC Redist爲何需要這麼長時間,可以嘗試在啓用日誌記錄的獨立模式下運行它。使用如下命令行:'vc_Redist.x86.exe/install/log install.log'。 – bradfordrg

回答

0

VC++可再發行耗時6分鐘的原因可能是由您在運行安裝程序的計算機上的Windows Update引起的。

VC++可再發行組件使用WIX刻錄引擎(WIX Toolset的一部分)。在安裝過程中,WIX Burn引擎會嘗試暫停自動更新。這條線在日誌文件中顯示暫停自動更新,大約需要6分鐘,超時後失敗:

[1254:1CC0][2017-05-29T11:02:52]w308: Automatic updates could not be paused due to error: 0x80080005. Continuing... 

錯誤代碼0x8008005是的Windows COM錯誤CO_E_SERVER_EXEC_FAILURE,轉化爲「服務器運行失敗」。可以在文章When CoCreateInstance returns 0x80080005 (CO_E_SERVER_EXEC_FAILURE)中找到解釋爲什麼會出現此錯誤的解釋。

建議您仔細查看目標計算機上的Windows更新,以查看發生了什麼。

相關問題