88bifa手机版更新silverlight 后 无法启动调试 未安装silverlight developer 运行时解决办法

Posted by

作者: zyl910

这种情况一般是安装的silverlight不是开发版,需要把已安装的Microsoft
Silverlight卸载掉,然后安装一个开发版即可。

由于项目要求,需要使用SilverLight,不得已,开始学习使用它。同事把SilverLight相关的SDK、Tool、Demo发给我,刚开始调试运行时,就出现如下问题:

一、问题

今天需要调试一个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
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”的。

1.控制面板-添加删除程序:

本机环境:Windows Server 2008R2

三、解决

既然上述办法均无效,我想那就干脆卸载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

找到Microsoft Silverlight 卸载掉

在网上搜索了一下,得到如下策略:

四、分析

根据此次经历,可得知——

  • 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”是旧的。

2.解压Silverlight4_Tools.exe文件(在哪里下载就不说了),

1。不调试,直接运行的烂方法: 
对着SilverlightApplicationXXX.Web项目右键属性—》Web->去掉Silverlight的勾。 
只能浏览不能F5调试。 
2。是可能由于已经安装了silverlight
4的版本,4.0.50524.0,而不是开发版本。

2.1.控制面板–》添加删除程序: 
删除Microsoft Silverlight,查看一下版本,是否是4.0.50524.0 
2.2. 在删除之后, 
解压缩Silverlight4_Tools.exe文件,把里面的silverlight_developer.exe(版本4.0.50401.0)安装一下,然后就可以进行调试了。

参考文献

  • 官网《Get Silverlight》:
  • 官网《Silverlight Downloads》:
  • RitchieChen《SilverLight:”无法启动调试–未安装 Silverlight Developer
    运行时。请安装一个匹配版本”的解决方案。》:

找到silverlight_developer.exe,这个就是所谓的silverlight 开发版了。

第一个方法倒是可以,不过不调试,开发的时候不太现实。按照第二个方法做了之后,却不行,调试时网页要求下载新版本的SilverLight,下载之后问题又出现了。找来找去,网上几乎全是这个解决办法。

安装后就可以调试了。

找呀找,在博客园中看到了另外一篇不一样的文章,使用如下办法:

其他silverlight常见问题silverlight部署 2104 类别:InitializeError
错误

<param name=”minRuntimeVersion”
value=”4.0.50826.0″ />

style=”color: #800000;”>即将网页中对SilverLight运行时要求的版本调整为比机器已经安装的更低版本。

 

试之,不妥。不管是将运行时版本调整为与本机安装版本一致或较低,还是出现同样的错误。

最近重做了系统,发现按以上方法依然没有解决问题:

所幸,在搜索时,增加了本机SilverLight版本号”4.0.50826.0”,在博客园中找到Kevin
Fan
的一篇文章:,才知道是由于SilverLight升级引起的这个问题,并且

安装完silverlight_developer.exe运行后提示“此页需要新版的silverlight”
更新后又无法调试,来回折腾了N次还是没有解决问题,

style=”color: #800080;”>对于开发人员来说,不仅需要重新下载Silverlight客户端,而且需要更新Silverlight
4新版SDK
,在其文章中,说到这次升级Visual Stuido
tools没有更新
,这里需要纠正,今天微软发布了新版的Silverlight
Tools,以适应新版Silverlight
4的开发环境,请大家同时更新,防止项目版本升级时,开发环境出现异常。

最后终于在SilverLight:”无法启动调试–未安装
Silverlight Developer
运行时。请安装一个匹配版本”的解决方案。中找到问题的所在。

并且,在文章里,给出了升级的详细说明和下载路径,分别为:

先在控制面板-添加删除程序中查看
sdk的版本号:

style=”color: #0000ff;”>升级解决问题详细说明

安装Silverlight
4.0.50826新版客户端 (适合终端用户)

安装Silverlight
4.0.60310.0新版客户端Windows版 (适合开发人员)

安装Silverlight
4.0.60831.0新版SDK (适合开发人员)

安装新版Silverlight 4
Tools (10.0.30319.400)(适合开发人员)

88bifa手机版 1

**!**在此需要说明的是:Kevin
Fan文章里给出的下载版本中注明的都是4.0.50826,和本机出问题的版本一样,即SilverLight和SDK的版本都是4.0.50826.0,无法调试。而Kevin
Fan文章里给出的链接下载下来(时间2012.02.07)的分别是以上版本,而不是4.0.50826.0(适合终端用户的我没有下载,故没有验证其版本号)。估计是微软又更新了SilverLight4吧,不然全是这4.0.50826版本,还是无法调试。

而我的silverlight_developer.exe
是40.0512**的低于该版本,是不是下载个高版本的就可以了呢。

问题算是解决了,开始SilverLight的学习了。

 正好上述链接中的客户端版本和我的SDK匹配那么下载一个不就可以了吗

 

重新安装下载后的silverlight_developer.exe。在检查silverlight的版本信息


88bifa手机版 2

作者:Ritchie(乞戈)  出处:http://RitchieChen.cnblogs.com/  本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。

这次版本确实比SDK高了,重新启动程序 OK
终于可以正常运行了。

 

可见SDK和silverlight客户端版本是要匹配的
至少客户端版本要高于sdk的版本

此外
如何查看下载的silverlight_developer.exe的版本,右键属性
版本中可以看到

88bifa手机版 3

 

 

相关文章

Leave a Reply

电子邮件地址不会被公开。 必填项已用*标注