Silverlight4的OOB(out of browser)很有意思,使得Silverlight有点像客户端程序。
有一个很重要的好处就是脱离了浏览器,不受浏览器兼容性的影响,而且不受浏览器类型的影响。
完整代码。
public App() { App.Current.CheckAndDownloadUpdateCompleted += new CheckAndDownloadUpdateCompletedEventHandler(Current_CheckAndDownloadUpdateCompleted); App.Current.CheckAndDownloadUpdateAsync(); this.Startup += this.Application_Startup; this.Exit += this.Application_Exit; this.UnhandledException += this.Application_UnhandledException; InitializeComponent(); } void Current_CheckAndDownloadUpdateCompleted(object sender, CheckAndDownloadUpdateCompletedEventArgs e) { if (e.UpdateAvailable && e.Error == null) { MessageBox.Show("应用新版本已经下载成功,将在下次启动时生效。"); } else if (e.Error != null) { MessageBox.Show("在检测应用更新时, 在" + "出现以下错误信息:" + Environment.NewLine + Environment.NewLine + e.Error.Message); } }
下面的两句是关键的代码,用来检查在服务器是否有新的xap,有就下载,并且在下一次启动使用新的xap客户端。
App.Current.CheckAndDownloadUpdateCompleted += new CheckAndDownloadUpdateCompletedEventHandler(Current_CheckAndDownloadUpdateCompleted); App.Current.CheckAndDownloadUpdateAsync();silverlight
Silverlight4的OOB中是可以提升权限的,提升权限之后可以读写本地文件,运行本地的一些程序,甚至可以和本地的COM组件交互,提升用户体验。
OOB设置在项目的属性设置页。
设置OOB属性,并且提升权限。
可以设置的属性包括标题,窗口的大小,窗口打开的时候所处的位置,图标,快捷方式的图标。
如果开始安装的xap没有提升权限,提升权限之后,更新xap,使用桌面的快捷方式启动xap,会出现下面的提示画面。
这是因为之前是不提升权限的,现在要提升权限了,相当于提升程序的信任等级,这是不合法的。这需要重新在网页上右键点击【安装到此计算机】。
重新安装之后,就又可以使用自动更新了。
还有一个需要注意的地方是。
如果是提升了权限,xap文件需要签名。
这样就可以给提升权限的OOB提供自动更新了。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。