Winform程序随Windows Service一同启动

有时候有些程式需要以服务的形式运行,但却不能做成服务,例如:Winform上面有调用ActiveX控件,ActiveX控件不能在服务中运行.

这时有两种解决方案:

1.做计划任务.此处略,重点是所有用户登录前运行。

2.做一个服务启动Winform程式,缺点是需要运行两个进程,代码参考如下:

 

代码
private Process process=null;
public Service1()
{
    InitializeComponent();
}

protected override void OnStart(string[] args)
{
    
//启动winform程式,此处winfrom程式与服务在同一目录
    process = Process.Start(AppDomain.CurrentDomain.BaseDirectory + "test.exe");
}

protected override void OnStop()
{
    
//关闭winform程式
    process.CloseMainWindow();
    process.Close();
    process.Dispose();
}

 

 

posted @ 2010-06-29 21:04  天际翔龙  阅读(1274)  评论(0编辑  收藏  举报