当前位置:  开发笔记 > 编程语言 > 正文

关于在桌面应用程序中使用Silverlight的想法?

如何解决《关于在桌面应用程序中使用Silverlight的想法?》经验,为你挑选了1个好方法。

总而言之,众所周知,

a)Silverlight预计将由浏览器托管,并在隔离的沙箱中运行,因此不会出现任何安全问题

    除隔离的存储区域外,Silverlight无法直接访问文件系统

    没有直接的方法可以打开像Silverlight中的文件保存这样的常见对话框(虽然支持Opendialog框).

b)Silverlight无法访问打印机等本地资源

什么是超越沙箱的方式,让我可以在本地托管Silverlight应用程序,阅读文件,并保存他们回来,如果需要,将数据交给打印机,等等..

更新:

完整的WPF对我来说不是一个选择吗?不,我也有兴趣在一个跨平台的解决方案 - 例如,你可以在单Web浏览器控件承载Silverlight中,这样就可以在任何地方运行它.

我们的想法是重新使用我建立了我的桌面网页,以及相同的应用程序,通过在某些领域提供了关注点分离 - 像持久性,资源访问等情景:

1-某种小工具容器,可以访问本地资源.2 - 基于Silver Light的桌面媒体应用程序

更新:

我刚刚做了一个POC,让我能够访问打印机并在本地保存文件,当然也可以通过我托管Silverlight应用程序的shell.如果你不想,你可以在我的博客中查看这里的帖子



1> amazedsaint..:

我能想到的两种方式是,

创建一个"壳牌"

使用Silverlight在Winforms桌面应用程序中使用Web浏览器控件托管HTML页面,并使用HTML DOM进行来回通信.然后我可以请求托管shell执行打印等操作.详情请见此处

Mono还有一个Web浏览器控件 - 基于FireFox XULRunner而不是IE - 尚未成功加载Silverlight.另一种选择可能是使用Webkit.

桌面外壳

嵌入Web服务器

在Host应用程序中嵌入轻量级Web服务器,并处理执行此类操作的请求.您可以在HTTP之上定义协议,例如保存到本地文件夹,发送数据以进行打印等.

嵌入服务器

推荐阅读
mobiledu2402851173
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有