如果在发送包含特定关键字的电子邮件时如何运行.exe

时间:2016-01-25 18:01:56

标签: c# email jenkins remote-server

有2台机器:
- 笔记本电脑
-Server(包含运行测试的.exe文件)

目标场景:笔记本电脑会发送一封包含关键字" RUNTESTING"的电子邮件。这会触发服务器运行.exe文件,等待测试完成,然后将结果通过电子邮件发送回相同的电子邮件地址。

这可能吗?我正在寻找可以访问Outlook的内容和#34;阅读"来自该特定人士的电子邮件。

我已经设置了Jenkins,但这对电子邮件扫描没有帮助。

2 个答案:

答案 0 :(得分:0)

您可以像Outlook一样访问邮箱,而无需直接访问Outlook。

大多数语言都有POP3和IMAP库。您的程序可以安排在Linux上使用cron或Windows上的Windows任务计划程序每十分钟运行一次(如果需要,可以更频繁地运行)。运行时,它会解析它没有看到的新邮件,当在主题或正文中看到“RUNTESTING”时,执行操作。

可能有商业产品可用于在电子邮件条件下自动执行任务,但是,编写您描述的内容不应该是一个特别大的项目。我首先考察并尝试使用C#的IMAP库,如果这是您的首选语言。

答案 1 :(得分:0)

我对jenkins没有任何经验,但您可以使用名为MailKit的库通过C#完成此操作。更具体地说,您可以在每5分钟左右迭代一次的定时循环中附上在邮件主题中搜索您的关键字的代码。

您还必须删除匹配的消息或使用某种日志以避免重复匹配。

您也可以使用此代码启动.exe并等待它完成后再发送结果(您可以使用MailKit):

actual

这样的事情:

Process.Start(); 
Process.WaitForExit();