你好,我是试图推出一个互动的过程-一winforms
在当前会话从窗口服务-应用程序。 我不知道该怎么办that.I正在使用TopShelf
我试图启动使用过程WhenSessionChanged
提供钩TopShelf
。 我可以得到sessionId
var exitCode = HostFactory.Run(x => {
x.Service<MyService>(s => {
s.ConstructUsing((h) => new MyService());
s.WhenStarted(t => t.Run());
s.WhenStopped(t => t.Stop());
s.WhenSessionChanged((anubis, args) => {
string winformsPath="D://WinFormsApp/Wf.exe"
int sessionId = args.SessionId;
Process process = new Process();
process.StartInfo = new ProcessStartInfo(winformsPath);
process.Start();
});
});
x.RunAsLocalSystem();
x.SetServiceName(Constants.ISO.NAME);
x.SetDisplayName(Constants.ISO.DISPLAY);
x.SetDescription(Constants.ISO.DESCRIPTION);
});
我不知道用什么做sessionId
。
PS
我没有张贴的定义MyService
,因为它不符合我们的case.I重要的就是想发动对当前会话的WinForms。