作者: "zyl910" 一、問題 今天需要調試一個SilverLight程式。運行時ie彈出了一個升級提示,於是手賤點了升級。 隨後便悲劇了,VS調試時報“無法啟動調試 未安裝 Silverlight Developer 運行時。請安裝一個匹配版本”。 打開控制面板里的“卸載或更改程式”,發現版本 ...
作者: zyl910
一、問題
今天需要調試一個SilverLight程式。運行時ie彈出了一個升級提示,於是手賤點了升級。
隨後便悲劇了,VS調試時報“無法啟動調試--未安裝 Silverlight Developer 運行時。請安裝一個匹配版本”。
打開控制面板里的“卸載或更改程式”,發現版本號確實不同——
- Silverlight: 5.1.50907.0
- Silverlight 5 SDK - CHS: 5.0.61118.0
但奇怪的是,沒看到“Silverlight Developer”,只看到“Silverlight”。
二、疑難
查了一下,說是需要安裝匹配的Silverlight Developer。
故搜索Silverlight Developer。發現沒有“Silverlight Developer”,但找到了Silverlight官方的 Silverlight Downloads 頁面。以為只是文字別名的小問題,應該下載官方的最新開發包就行了。
但發現該頁面下載的“Silverlight 5 Toolkit”、“Silverlight 5 SDK”,安裝後均不能解決問題。
仔細一看,發現“Silverlight 5 Toolkit”、“Silverlight 5 SDK”均是 5.0.61118.0,與之前的相同,沒有5.1.50907.0版。
於是又換了多種搜索引擎,嘗試加上“5.1.50907.0”等關鍵詞。但仍是查到剛纔的那些頁面,或者是其他網站轉載的,均不頂用。看來是沒有“Silverlight 5 SDK 5.1.50907.0”的。
三、解決
既然上述辦法均無效,我想那就乾脆卸載Silverlight再重裝吧。
將Silverlight卸載後,嘗試打開了一次VS。VS彈出對話框說Silverlight沒安裝,並提供一個下載鏈接
將它下載安裝後,發現它正好是我們所需要的最新版(5.1.50907.0)的Silverlight Developer。VS能成功調試Silverlight程式了。
打開控制面板“卸載或更改程式”的版本號還是跟以前一樣——
- Silverlight: 5.1.50907.0
- Silverlight 5 SDK - CHS: 5.0.61118.0
四、分析
根據此次經歷,可得知——
- Silverlight插件有2個運行時,分別是“Silverlight”與“Silverlight Developer”。但它們在控制面板“卸載或更改程式”里顯示的是同一個程式(Silverlight),導致我們不好判斷是不是Developer版。
- Silverlight 的版本號與“Silverlight SDK”不同。因為缺陷修複等原因,Silverlight的版本有時比“Silverlight SDK”新的多。但只要主版本號相同,便能使用(例如“Silverlight SDK 5.0.61118.0”開發的應用可以在“Silverlight 5.1.50907.0”上運行)。
- 若要調試Silverlight應用,除了需要“Silverlight SDK”進行編譯外,還需要“Silverlight Developer”運行時。而在“Silverlight”運行時下是不能調試的。
這次問題的發生原因是——
- 在瀏覽器中升級Silverlight,實際上更新為“Silverlight”運行時(非Developer)。“Silverlight Developer”因版本較低而被覆蓋了。
- 當VS檢查到只有Silverlight沒有“Silverlight Developer”運行時時,會彈出錯誤對話框。但它沒有提供下載鏈接,導致我們得自己去找。
- 官網的“Get Silverlight”提供了最新版的Silverlight運行時(非Developer),但找不到“Silverlight Developer”的下載地址。
- 官網的“Silverlight Downloads”提供了“Silverlight 5 Toolkit”、“Silverlight 5 SDK”。但它們中集成的“Silverlight Developer”是舊的。
參考文獻
- 官網《Get Silverlight》: https://www.microsoft.com/getsilverlight/Get-Started/Install/Default
- 官網《Silverlight Downloads》: https://msdn.microsoft.com/en-us/library/mt788663.aspx
- RitchieChen《SilverLight:”無法啟動調試--未安裝 Silverlight Developer 運行時。請安裝一個匹配版本”的解決方案。》: https://www.cnblogs.com/RitchieChen/archive/2012/02/08/2342125.html