來了!來了!從山坡上輕輕地爬下來了。Visual Studio 2017 3/7 RTM囉~
家裡跟公司有好幾台機器要裝,照著小朱的教學文抓好離線安裝包(我選 Enterprise 英文版,全部安裝檔約 20.6 GB),避免逐台重複下載耗時費頻寬又不環保。按照慣例,身為茶包射手體質異於常人,安裝 Visual Studio 一次 OK 成何體統?(案例、案例、案例)是的,我又踩到水坑了~
本次遇到的問題安裝過程出現 Microsoft.VisualStudio.WebDeploy 安裝失敗,導致 .NET Core、.NET 桌面開發及 ASP.NET 與網頁程式開發裝不起來。
無法安裝套件 'Microsoft.VisualStudio.WebDeploy.Msi,version=15.0.26208.0,chip=x64'。
搜尋 URL: https://aka.ms/VSSetupErrorReports?q=PackageId=Microsoft.VisualStudio.WebDeploy.Msi;PackageAction=Install;ReturnCode=1316
受影響的工作負載
.NET Core 跨平台開發 (Microsoft.VisualStudio.Workload.NetCoreTools,version=15.0.26208.0)
.NET 桌面開發 (Microsoft.VisualStudio.Workload.ManagedDesktop,version=15.0.26208.0)
ASP.NET 與網頁程式開發 (Microsoft.VisualStudio.Workload.NetWeb,version=15.0.26208.0)
受影響的元件
ASP.NET 與網頁程式開發工具 (Microsoft.VisualStudio.Component.Web,version=15.0.26208.0)
Web Deploy (Microsoft.VisualStudio.Component.WebDeploy,version=15.0.26208.0)
Windows Communication Foundation (Microsoft.VisualStudio.Component.Wcf.Tooling,version=15.0.26208.0)
記錄
C:\Users\Jeffrey\AppData\Local\Temp\dd_setup_…_Microsoft.VisualStudio.WebDeploy.Msi.log
詳細資料
MSI: C:\ProgramData\Microsoft\VisualStudio\Packages\Microsoft.VisualStudio.WebDeploy.Msi,version=15.0.26208.0,chip=x64\webdeploy_x64.msi,屬性: REBOOT=ReallySuppress
傳回代碼: 1316
傳回代碼詳細資料: 指定的帳戶已存在。
爬文推測為 Web Deploy 套件之安裝資訊毁損,導致移除或升級失敗。試著手動解除安裝,看到一模一樣的「指定的帳戶已存在訊息」。
針對無法安裝或無法解除安裝的疑難雜症,微軟有個自動修復工具,能修復以下問題:
- 64 位元作業系統的登錄機碼損毀
- 控制更新資料的損毀登錄機碼
- 無法安裝新程式問題
- 無法解除安裝或更新現有程式問題
- 無法由 [控制台]中透過 [新增或移除程式] (或 [程式和功能]) 解除安裝程式的問題
從沒用過,抱著姑且一試的心情試跑(命運之神會這麼輕易放過我嗎?),程式詢問要解除安裝的程式,Microsoft Web Deploy 3.6 不在其中,依提示選取「未列出」:
第一關來了,請填入產品代碼 GUID… 嗯,還好我對 GUID 也是略懂略懂,就算不知產品代碼,還是可以用暴力破解,估計試過 103 百萬兆次就會有 10 億分之一的成功機會:
別鬧了!身為 Windows 老鳥,很快在 Registry 搜尋關鍵字找出答案。
答案正確,程式成功找到「Microsoft Web Deploy 3.6」,詢問要解除安裝還是嘗試其他修正,選擇解除安裝。
之後經過「毁損的修補登錄機碼」(這啥?阿鬼,你還是說英文吧!)、「查看修補程式相關問題的登錄」、「嘗試使用下列項目解決問題:Microsoft Web Deploy 3.6」等過程,大功告成!
Microsoft Web Deploy 3.6 從解除安裝清單消失,重試一次,Visual Studio 2017 安裝完成,萬歲!
找到工具這麼快就把問題解了,還真不習慣,哈!(謎:是有沒有這麼賤骨頭啦?)