c# - Windows 服务可以在未登录的情况下启动应用程序吗?

标签 c# windows service windows-services

我的问题是更多的可能性然后是如何。我目前有两个自定义 Windows 服务,一个使用 TCP 通过网络将文件从客户端发送到主机,另一个接收这些文件,传输完成后启动一个 C# 应用程序,该应用程序开始将这些文件上传到数据库(两个服务做更多,但这是他们所做工作的基本思想)。我的问题是,是否可以让主机(服务器)上运行的服务启动 C# 应用程序以在用户未登录的情况下上传?或者我是否也必须将该应用程序转变为一项服务?

最佳答案

is it possible to have the service running on the host(server) launch the C# application to upload without a user being logged in?

这就是 Windows 服务的全部意义所在 - 它们无需任何人登录即可运行。

是的,他们可以启动其他进程 - 这通常是通过 Process 完成的类。

Process.Start("path to application", "command line arguments");

您可以使用返回的 Process 引用并稍后终止它(如果它不是自终止的)以确保您的服务器不会执行它的多个副本并耗尽内存。

关于c# - Windows 服务可以在未登录的情况下启动应用程序吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10603601/

相关文章:

android - 停止音乐和服务

c# - Windows Phone 8 MediaStreamSource具有多个音频流

c# - 如何延长使用耐用品的azure功能的超时?

c# - Timer.Elapsed 触发事件只有一次,我想要每秒

Python 解释器在 Powershell ISE 中崩溃

c# - LibUsbDotNet,没有 libusb-1.0.dll

android - 使用 startService 启动服务时如何获取 IBinder/ServiceConnection/onServiceConnected?

c# - Visual Studio 无法使用调试器 (AccessViolationException)。随机顺序执行的代码

c++ - Windows - 在 C++ 中读取鼠标的 dpi 设置

linux - centOS 6.6 和 centos 7 : auto restart a service if it stopped