我必须开发一个应用程序: -

这将有两个部分管理员和客户

应用的组成部分: -

1)WCF服务: - 通过某种UI捕获所有客户端机器的屏幕图像(例如“捕获”)

2)客户: - 这将是在不同的机器和消费WCF服务上运行的任何EXE。

因此,根据架构: -

1)所有客户端.EXE将订阅WCF服务,以便使用此频道服务在客户端和服务之间建立频道,应向所有客户端(.exe)(在不同的机器上)启用回调(指令)以捕获桌面图像并保存它在某个特定位置。

我知道的事情: -

1)这可以通过WCF中的回调机制来实现。

我正在寻找的东西: -

如何以及在何处生成事件,以便指示所有客户端捕获桌面image.ie如何在某种UI(例如按钮)中使用WCF服务“捕获”。当管理员单击捕获按钮时,事件应提高到所有客户捕获屏幕。

请帮助如何使用WCF回调执行此任务

有帮助吗?

解决方案

实际上,您已经给了答案。管理员需要使用UI触发事件。因此,此UI是WCF服务的另一个客户端。您的服务需要配置为InstanceContextMode.Single,以便只有一个具有共享状态的实例(即注册客户端列表)。当您共享状态时,您也必须考虑并发。然后,UI中的按钮可以触发同一WCF服务中的方法,该方法将使用回调通知客户端。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top