zyl910

优化技巧、硬件体系、图像处理、图形学、游戏编程、国际化与文本信息处理。

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  215 随笔 :: 0 文章 :: 145 评论 :: 111万 阅读
< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8

作者: 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没安装,并提供一个下载链接

https://download.microsoft.com/download/F/D/0/FD0B0093-DE8A-4C4E-BDC4-F0C56D72018C/50907.00/Silverlight_Developer.exe

将它下载安装后,发现它正好是我们所需要的最新版(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”是旧的。

参考文献

posted on   zyl910  阅读(655)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
阅读排行:
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 推荐几款开源且免费的 .NET MAUI 组件库
· 实操Deepseek接入个人知识库
· 易语言 —— 开山篇
· Trae初体验
点击右上角即可分享
微信分享提示