在win服务和win app之间进行通信

问题描述 投票:1回答:3

我想写一个与我的win应用程序通信的Windows服务,它将运行我的Windows窗体。 我该怎么做? 如果你给我一个简单例子的链接,那将是非常好的。

我有另一个问题:如果我使用Windows服务运行我的win表单,如果我不关闭我的表单,如果用户注销它将被关闭,是真的吗?

c# windows windows-services communication
3个回答
4
投票

有很多选择:

  • WCF
  • .NET Remoting
  • 共享内存
  • 命名管道
  • 普通的TCP
  • ...

什么机制是最适合你的情况取决于的要求,你还没有说,也许也没多想。 如果你不知道你需要什么,只需抓住任何一个足够简单的机制,你已经搜索了一个合适的教程并开始编码。


0
投票

Ondrej回答了你问题的第一部分。 你还问:

我有另一个问题,如果我使用Windows服务运行我的win表单,如果我不关闭我的表单,如果用户注销它将会关闭,是真的吗?

嗯,首先,服务在没有任何UI的情况下运行,没有任何形式。 如果您的服务需要与您的用户沟通,那么这就是您需要的应​​用程序。

但要回答我认为您要问的问题,当用户注销时,正在运行的任何应用程序都将关闭,但服务将继续运行。


0
投票

实际上,Windows服务用于执行必须独立地在时间间隔中运行的操作。 它没有任何显示操作进度的UI。

有关可以使用Windows服务的情况,请参阅示例...

例如:如果表包含n个记录,则必须处理每个记录。 假设处理可能需要几分钟,这可能会导致在asp.net中出现某种时间,您可以使用Windows服务运行此过程。 您可以在Windows服务中设置一个计时器来安排行处理(一次一行,并在一天结束时完成整个行处理)。

© www.soinside.com 2019 - 2024. All rights reserved.