我正在尝试使用下面的代码从Windows服务启动一个Windows应用程序
Process.Start(@"filename.exe");
在Windows 7中,我收到一个popup窗口,说:“在这台计算机上运行的程序正试图显示一条消息”
您无法从Windows服务启动交互式应用程序 。 这在Windows Vista和7中进行了更改。
在这个堆栈溢出答案给了一些其他的建议在同一主题 。
当我需要这样做时,我必须将Windows服务更改为控制台应用程序,并以此方式调用它。
我发现这个问题的解决方法是使用Windows任务计划程序。 您可以通过创建批处理文件来安排应用程序在几秒钟后运行。
在我以前的公司,我们遇到了这个问题,我们编写了一个控制台应用程序,运行在sys托盘中,充当从服务到桌面的桥梁。 基本上通过远程(我现在使用WCF),我们让服务请求,控制台应用程序启动另一个应用程序。