繁体   English   中英

Windows服务和桌面应用程序之间的通信

[英]Communication between Windows Service and Desktop Application

我知道之前已经提出了类似的问题,但即使在我的谷歌搜索之后,我仍然完全迷失了。

我写了一个小的Windows服务,做什么我用来在后台线程来执行主应用程序(这是有道理将其移动到一个单独的服务有以下几个原因)。

当后台线程作为我的应用程序的一部分运行时,它会在每次完成工作时触发事件(在这种情况下更新数据库),并且我将使用该事件的时间戳来获取更新窗口的相应信息。 我不认为具体内容是相关的,但如果您需要更多详细信息,请告诉我。

既然我已经将数据库填充的东西作为服务运行,那么问题就变成了: 我如何替换事件过去所做的事情?

换句话说,将基本DateTime从我的服务传递到我的应用程序的最简单和/或最有效的方法是什么?

我之前从未做过任何IPC,但是开始阅读并完全混淆了。 Named Pipes似乎是我最好的选择,到目前为止,但我一直无法找到任何可以帮助我了解它们的功能......所有我发现有不良的注释的代码块,或者去比深刻“教程”我需要,没有明确涵盖基础知识。

所以,如果没有能够建立一个良好的基础,我有点卡住了。 实现简单通信的最佳方法是什么,它可以完成我的事件以及我在哪里可以学习该方法的基础知识?

编辑:

一如既往,每个人都在摇滚,感谢所有快速反应。 Gerrie的链接结果正是我所需要的(虽然我不知道那是我当时需要的)。

不要被命名管道概念吓跑,WCF将为您处理讨厌的事情。 您只需要进行配置,它只是另一个通信通道,而不是使用HTTP。 所以你需要调查WCF。

看看这个教程

换句话说,将基本DateTime从我的服务传递到我的应用程序的最简单和/或最有效的方法是什么?

您应该在此方案中使用命名管道 ,但您使用的其他选项涉及MSMQ ,webservices。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM