2

在浏览器中有Silverlight 5 应用程序。需要使其与扫描仪一起使用。我可以控制 SL5 应用程序,我可以开发桌面应用程序 (.NET) 来执行扫描部分。

如何让 SL 应用程序与桌面应用程序“对话”?理想情况下,我认为它如下:

  1. 当您上传/下载文档时,我的“文档管理”就像在 SL5 中一样工作。
  2. 当用户想要扫描时 - SL5 启动一些进程(?)导致桌面应用程序打开。
  3. 如果桌面上没有应用程序 - 它将转移到带有说明和下载的网页。
  4. 当桌面应用程序打开时 - SL 应用程序将传递参数、设置等。
  5. 扫描文档时 - 桌面应用程序会将信息传回 SL 应用程序

有什么方法可以让 SL/WPF 互相交流吗?如何?

4

2 回答 2

2

我之前在 silverlight 应用程序中实现了扫描。它涉及创建一个 activex / dll 控件并将其托管在托管 .aspx 页面中的 silverlight 应用程序旁边。控件本身是完全隐藏的,我只是使用它的方法来访问扫描仪并使用本地文件系统。现在被授予,我必须使它成为一个受信任的站点,并且不允许控件访问客户端计算机。那么您可以使用 javascript 作为 silverlight 代码和您的扫描控件之间的桥梁。要将图像传回 Silverlight,我只是将扫描的图像转换为 base64 字符串并将其传回 javascript 和 silverlight 代码,然后最终将其传回服务器和图像存储库。

于 2012-12-05T19:29:24.320 回答
0

是否可以从应用服务器“看到”扫描仪?通过调用托管在与我的 Silverlight 应用程序相同的站点上的 WCF 服务并让它发送文档,我在打印方面取得了成功。您需要管理将用户链接到设备的表。这可能意味着您根本不需要桌面应用程序,但可以将该功能放入您的 Silverlight 应用程序中。显然,如果您要传递大图像或有很多用户,从性能的角度来看,这并不理想。但是,在服务器上,您可以使用完整的 .net 功能,这让事情变得非常简单。

所以基本上你的桌面应用程序的 UI 是在 Silverlight 中,而胆量又回到了服务器上。

如果您找到一种直接的方法来做到这一点,我会很高兴听到它。

于 2012-10-19T20:11:07.673 回答