3

我只是想对我正在处理的项目进行一些输入。基本上,我创建了一个服务,通过命令行监视和处理由配置文件和其他参数指定的目录中的新文件。它还应该通过命令行输出文本,即当用户键入'-help'时,它将显示它的用法。目标是让用户可以即时更改配置文件,以便服务会不断监视配置文件的变化并进行相应调整。可以动态接受控制台命令的Windows服务应用程序

我看到的挑战是试图巩固通过命令行输入命令,显示输出的能力,就好像它是一个控制台应用程序,并让服务能够处理它们在服务控制管理器。到目前为止,在我的研究中,我偶然发现的解决方案似乎展示了如何创建一个Windows服务应用程序,该应用程序也可以作为控制台应用程序运行,但它可以作为一个或另一个而不是两个运行。任何建议或意见,表示赞赏。

UPDATE:

谢谢大家的建议,我做了支持IPC机制的各种Windows一些reading。我把我的选择烧录到File Mapping,Named Pipes和RPC。我现在假设Windows Service应用程序和Helper Console应用程序将位于同一台计算机上,并且不需要通过网络进行通信。我会先看看命名管道。

+1

如果您想创建一个用户可以通过命令行发送命令的东西,您可以始终让应用程序通过可以telnet到的tcp客户端在特定端口上侦听并发送命令。 – 2010-11-09 17:41:45

回答

2

该服务需要提供与其通信的可能性,但这不能直接完成,它必须由某种IPC(进程间通信)完成,这可能是.net Remoting,WCF, TCP/IP。您将不得不编写一个帮助程序来解析命令行并使用此IPC将命令发送给服务,该服务可以在收到服务时适当行动。

0

我会写一个控制台应用程序,向服务发送请求并显示其响应。如果你想变得聪明,你可以将两部分都包含在同一个可执行文件中。我想不出有什么办法可以让服务在作为服务运行时从控制台写入和读取。

相关问题