我正在尝试使用以下代码从Windows服务启动Windows应用程序
Process.Start(@"filename.exe");
在Windows 7中,我收到一个弹出窗口,上面写着“此计算机上运行的程序正在尝试显示消息”
答案 0 :(得分:7)
答案 1 :(得分:5)
You cannot start an interactive application from a Windows Service。这在Windows Vista和7中已更改。
给出了一些其他建议in this Stack Overflow answer on the same subject。
当我需要这样做时,我不得不将我的Windows服务更改为控制台应用程序,并以这种方式调用它。
答案 2 :(得分:3)
我发现这个问题的解决方法是使用Windows任务调度程序。您可以通过创建批处理文件来安排应用程序稍后运行一段时间。
答案 3 :(得分:1)
在我以前的公司,我们遇到了这个问题,我们编写了一个控制台应用程序,它运行在sys托盘中,充当从服务到桌面的桥梁。基本上通过远程处理(我现在使用WCF)我们让服务请求控制台应用程序启动另一个应用程序。