我正在尝试使Windows服务在您进入会话之前自动启动。
我尝试使用TopShelf
并添加了Start Automatically
方法,但是启动计算机时该服务无法启动。我仍然必须手动启动它。
我有什么想念的吗?
服务启动
public static void RunService() {
var exitCode = HostFactory.Run(x => {
x.Service<SomeService>(s => {
s.ConstructUsing((h) => new SomeService());
s.WhenStarted(t => t.Start());
s.WhenStopped(t => t.Stop());
s.WhenSessionChanged((daemon, host, args) => daemon.SessionChanged(args.SessionId));
});
x.EnableSessionChanged();
x.EnableShutdown();
x.StartAutomatically();
x.RunAsLocalSystem();
});
int exitCodeValue = (int)Convert.ChangeType(exitCode, exitCode.GetTypeCode());
}
答案 0 :(得分:1)
有关其他建议,请参见“ Why doesn’t my Windows Service Start at Boot?”。