两个不同的计算机之间通过两个不同的应用程

时间:2012-07-18 18:55:08

标签: c# visual-studio-2010 remote-desktop verizon-wireless

我有两台Windows计算机都通过wifi或4G-LTE调制解调器连接到互联网。

当发生与我的工程项目相关的特定事件时,第一台计算机以编程方式向收件人发送电子邮件。

问题在于第二台计算机。我希望能够创建一个程序来更改某些内容,例如第一台计算机用来发送电子邮件的电子邮件收件人列表。

连接到互联网的两台不同计算机上的两个C#应用程序,如何在这些之间进行通信?任何建议都会很棒。我希望我解释得足够多。

3 个答案:

答案 0 :(得分:1)

有很多选择。这是两个。

选项A

电子邮件发送计算​​机可以检查已知的URL以获得当前的电子邮件收件人列表,例如, http://mycompany.com/emailRecipients。第二台计算机可以使用包括FTP在内的多种方法中的任何一种来更新该已知URL的内容。

选项B

就个人而言,我会创建一个可以接受更新的电子邮件收件人列表的Web服务,并将新列表写在需要在该计算机上运行的位置。

棘手的部分是找到运行Web服务的计算机(并发送电子邮件),因为IP地址会频繁更改(在无线运营商上)。

在这种情况下,您可以使用LogMeIn Hamachi等解决方案创建具有稳定IP地址的VPN。

答案 1 :(得分:0)

选择“第一台计算机”作为服务器。使用Net.Sockets.TCPServer从路由器和应用程序打开一个不常见的端口,如20546。第二台计算机可以简单地发送字符串命令,如“addtolist abc@somemail.com”。如果你使用,服务器可以理解你的命令,让我们说command.split(“”),现在字符串数组中的第一个元素是命令第二个是参数。一切都可以通过这种方式完成。

答案 2 :(得分:0)

我建议您使用基于云的邮件队列,例如Azure Message Queue或Amazon Simple Message Queue(这是最近的comparison)。基于云的队列允许您使用持久性服务器地址配置应用程序。

如果您的计算机的IP地址是提前知道的,或者您可以使用共享计算机作为地址交换,那么ZeroMQ也是一个很好的选择,让您使用请求 - 响应或发布 - 订阅消息共享模式。

相关问题