我对程序有一些基本的编码,但我确实需要帮助。我的目标是在网络中的多台PC上发出警报,指示需要完成某项任务。收到此警报的任何人都可以阻止它,完成任务并记录他们这样做。在网络中实现这一目标的最佳方法是什么?但并不是网络中的每台计算机都会运行这个程序,只有少数。
答案 0 :(得分:1)
您可以让应用程序(在网络中的某些计算机上运行)注册以参与多播地址。这将允许网络中的机器在不需要中央服务器的情况下交换数据。
更多信息:
IP多播:http://en.wikipedia.org/wiki/Multicast
在C#中进行多播:( CodeProject)http://www.codeproject.com/KB/IP/multicast.aspx
示例项目:http://www.nmsl.cs.ucsb.edu/MulticastSocketsBook/csharp_send_receive.zip
您可以使用生成警报的程序发送多播消息 包含其他计算机处理任务所需的所有信息。
可以执行作业的计算机会发回消息和警报应用程序 然后通过向该客户端发送“继续并执行”消息来决定哪个“客户端”最终将执行该任务。只有这样,“客户端”应用程序才会实际执行任务并在完成任务时报告。
只是一个想法。
答案 1 :(得分:1)
您还可以在管理服务器上创建一个网页,访问用户可以在其中注册警报。这意味着您开发并分发到一台计算机而不是 x 数量的计算机。然后,警报将在您的Web浏览器中消失,用户也会在其中做出响应。
答案 2 :(得分:0)
你可以让一个进程监听套接字上的其他PC,这会触发警报 http://www.devarticles.com/c/a/C-Sharp/Socket-Programming-in-C-sharp-Part-II/1/
答案 3 :(得分:0)
在企业环境(或可能是某些学校)中,这是一个非常常见的IT问题。您可以使用他们的IT部署/策略实施软件来分发程序。
如果您掌控自己的网络环境,那么分发它似乎是合适的。正如帕特里克回答的那样,您订阅警报的内部网页是有意义的。
在网络上进行推送似乎不可靠,如果您将程序转移到不太友好的网络中,肯定会让IT员工感到愤怒:)另外,如果您的网络是互联网,那么这只是错误的工作模式。< / p>