代码之家  ›  专栏  ›  技术社区  ›  Jake

通过单独的应用程序控制服务

  •  2
  • Jake  · 技术社区  · 14 年前

    我正在写一个windows服务来做一些日常处理,我想有一个用户友好的方式来与它交互。我只会做一些基本的事情,比如检查它的状态和查看日志,尽管我可能会决定也加入一两个函数调用。在做了一些研究之后,听起来我需要一个单独的应用程序来执行这些功能,因为服务将独立于任何登录到主机的用户运行。我的想法是让这个应用程序通过某种接口与服务交互,但我不确定从何开始。

    让应用程序与单独的服务通信的最简单方法是什么?我会使用COM、WCF、消息队列,还是完全使用其他东西?我知道可能有一些方法可以做到这一点,所以如果可能的话,我很乐意听到一些利弊。

    编辑:

    3 回复  |  直到 14 年前
        1
  •  1
  •   Ladislav Mrnka    14 年前

    将WCF与NetNamedPipeBinding(仅允许同一台计算机上的IPC)或.NET远程处理一起使用。如果你想快速完成,选择你更熟悉的技术。如果您不熟悉这些技术中的任何一种,请选择WCF,因为它是一种较新的技术,而且您将来很可能会再次使用它—因此使用它的卓越性将非常有用。

        2
  •  1
  •   Ian Mercer    14 年前

    理想情况下,您应该创建一个单独的应用程序,并使用WCF在您的服务和这个应用程序之间进行通信。

    http://msdn.microsoft.com/en-us/magazine/cc163879.aspx

    这使得您很容易接受一些简单的命令,并且可以使用任何web浏览器发送它们。

    为了查看日志,为什么不直接跟踪日志文件(例如使用baretail)?

        3
  •  0
  •   leppie    14 年前

    跳过WCF,只需使用普通的.NET远程处理。简单多了。为什么他们说它不受欢迎,天知道。

    编辑:看到它运行在同一台电脑上,传输将命名为管道,IIRC WCF也支持这一点。