Silverlight4 OOB 自动更新

Silverlight4的OOB(out of browser)很有意思,使得Silverlight有点像客户端程序。

有一个很重要的好处就是脱离了浏览器,不受浏览器兼容性的影响,而且不受浏览器类型的影响。



完整代码。


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
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客户端。

1
2
App.Current.CheckAndDownloadUpdateCompleted +=  new  CheckAndDownloadUpdateCompletedEventHandler(Current_CheckAndDownloadUpdateCompleted);
            App.Current.CheckAndDownloadUpdateAsync();silverlight



Silverlight4的OOB中是可以提升权限的,提升权限之后可以读写本地文件,运行本地的一些程序,甚至可以和本地的COM组件交互,提升用户体验。

OOB设置在项目的属性设置页。

171529150.png

设置OOB属性,并且提升权限。

可以设置的属性包括标题,窗口的大小,窗口打开的时候所处的位置,图标,快捷方式的图标。

170810878.png

如果开始安装的xap没有提升权限,提升权限之后,更新xap,使用桌面的快捷方式启动xap,会出现下面的提示画面。

171044196.png

这是因为之前是不提升权限的,现在要提升权限了,相当于提升程序的信任等级,这是不合法的。这需要重新在网页上右键点击【安装到此计算机】。

172146130.png

重新安装之后,就又可以使用自动更新了。

172339664.png

还有一个需要注意的地方是。

如果是提升了权限,xap文件需要签名。

172713325.png

这样就可以给提升权限的OOB提供自动更新了。




本文转自 virusswb 51CTO博客,原文链接:http://blog.51cto.com/virusswb/1202853,如需转载请自行联系原作者
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值