c# - 与 Windows 服务交谈

标签 c# .net windows-services

我不确定我的标题应该是什么,所以我使用了“Talk”这个词。

我创建了一个窗口服务,运行完美。安装和一切。

但是。我需要一个正在运行的系统托盘,以及一个可以调用Windows服务内部函数的程序。

就像,当用户单击“Get Clicked”时,它会在 Windows 服务 中转出一些内容。

我不知道我该怎么办..我开始思考一些非常愚蠢的方法。

就像更改文本,然后 Windows 服务读取它以获取命令。我认为这是非常愚蠢的方式。您知道我可以通过其他方式与 window sservice 进行通信吗?

似乎每个人都回答“WCF”。但是,如果只在端口 25555 或其他端口上打开 TCP 端口,那不是很简单吗?并且只能读写?就像文字一样。 “现在,以后”。并用它来做函数?我认为它会起作用。不是吗?

最佳答案

过去经常使用 .NET 远程处理来实现此目的,现在您可以使用性能更好的 WCF。

只需在 Windows 服务中托管一个小型 WCF 服务,并使 UI 应用程序(如托盘图标管理器)调用这些公开的 WCF 端点即可与该服务进行通信。

你不需要IIS或其他任何东西,如果你使用netTcp绑定(bind)或namedPipes,它就会顺利工作。

关于c# - 与 Windows 服务交谈,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7267660/

相关文章:

c# - 如何使用 dotnet test 命令行运行单个 xunit C# 测试

c# - 安排机器唤醒

c# - 当前服务的名称,以防同一个 exe 被设置为多个服务

SSIS 脚本任务中的 C# 脚本将 "Text"格式的 Excel 列转换为 "General"

c# - ORA-00911: C# 中的无效字符,但不是 Oracle SQL Developer

c# - Asp.Net WebApi Core 2.0 身份与 JWTBearer 没有 cookie

asp.net - 如何从 ASP.NET 应用程序启动/停止 Windows 服务 - 安全问题

c# - 拦截webapi json格式错误

.net - 我怎样才能让一个 IPropagatorBlock<TInput, TOutput> 自动停止?

asp.net - 如何在 Nancy 中显示我的 404 页面?