C#Windows服务程序编写--桌面交互
public partial class Service1 : ServiceBase
{
public Service1()
{
InitializeComponent();
}
protected override void OnStart(string[] args)
{
Form ooo = new Form();
ooo.ShowDialog(); //不使用show方法,而是ShowDialog方法,实现交互
}
protected override void OnStop()
{
}
}
在开发模式下,在为Service添加的ServiceProcessInstaller属性中的Account设置为LocalSystem,然后编译,使用installutil进行安装到windows Service编录(管理器),然后在对应的服务属性中【登录】页中,设置本地系统账户的【允许与桌面交互】选项被选中,最后启动服务,此时桌面就会显示出来。并且UI可以正常操作了。