gpt4 book ai didi

c# - 安装时自动启动 Windows 服务

转载 作者:太空宇宙 更新时间:2023-11-03 14:32:35 24 4
gpt4 key购买 nike

我有一个 Windows 服务和一个 MSI 安装程序(安装项目)。安装项目具有用于安装和卸载的自定义操作,参数分别为/install 和/uninstall。

我希望服务在安装后立即启动。我的服务所做的只是启动一个流程。当服务停止时,它执行 process.Close();

我试过

var sc = new ServiceController( "MyProcess" );
sc.Start();

进程启动,但没有显示表明服务已启动的事件日志消息。停止时出现错误 Error stopping process: System.InvalidOperationException: No process is associated with this object.

如果我不使用服务 Controller 来启动而是使用 Services.msc,它在停止时会按预期工作。

有没有办法让进程立即启动并让我的启动/停止方法按预期工作?

最佳答案

您没有说您使用的是什么操作系统,但我记得去年在开发安装程序应用程序时遇到过这个问题。我相信这是 Windows 7、Server 2003/2008 和可能的 Vista 中的安全限制,因为安装程序无法启动它安装的任何应用程序。如果您将服务设置为自动启动,那么它应该会在下次系统重新启动时启动。

关于c# - 安装时自动启动 Windows 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2247815/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com