问题描述
|
从3.0版开始,Silverlight提供了本地连接API,可用于在同一计算机上运行的Silverlight应用程序之间进行通信。
我想从功能完善的.NET应用程序中使用此机制;带Silverlight发送器的.NET接收器。不幸的是,我找不到任何“官方”方式。可能应该做的一件事情是将WebBrowser组件嵌入到我的(WPF)应用程序中,该应用程序又托管了一些Silverlight并将两者与某些脚本绑定在一起,但这听起来非常混乱。
有更好的方法吗?
编辑:
使用套接字而不是本地连接API并不是真正的选择,因为我只想与当前Windows会话中的应用程序通信(如果有多个RDP / Citrix用户)。本地连接似乎可以实现此目的。对套接字执行相同操作将需要我进行一些端口协商或找出我正在Silverlight中运行的会话,而我无能为力。
解决方法
我会采用Socket方式在Silverlight应用程序和WPF之间进行通信(任何与此相关的应用程序都支持Sockets)
http://msdn.microsoft.com/zh-CN/library/cc296248(v=vs.95).aspx