WEB开发网
开发学院软件开发C语言 C#发现之旅:C#开发Windows Service程序(下) 阅读

C#发现之旅:C#开发Windows Service程序(下)

 2009-04-06 08:24:16 来源:WEB开发网   
核心提示:类似的对于“停止服务”,其点击事件处理为private void btnStopService_Click(object sender, EventArgs e){ if (bolServiceInstalled == false) return; using (System.ServicePr

类似的对于“停止服务”,其点击事件处理为

private void btnStopService_Click(object sender, EventArgs e)
{
    if (bolServiceInstalled == false)
        return;
    using (System.ServiceProcess.ServiceController control = new System.ServiceProcess.ServiceController("MyFileSystemWatcher"))
    {
        if (control.Status == System.ServiceProcess.ServiceControllerStatus.Running)
        {
            control.Stop();
        }
    }
}

在这个处理过程中,若判断出服务状态为运行中,则调用控制器的Stop方法来停止服务。在这里Stop方法内部只是通知操作系统停止指定的服务,它发送通知后立即返回,不会等待服务停止后返回。

我们还在窗体上放置一个定时器控件,定时间隔为2秒,用于根据服务的状态刷新工具条按钮状态,其定时事件处理为

private void myTimer_Tick(object sender, EventArgs e)
{
    if (bolServiceInstalled == false)
        return;
    using (System.ServiceProcess.ServiceController control = new System.ServiceProcess.ServiceController("MyFileSystemWatcher"))
    {
        btnStartService.Enabled = (control.Status == System.ServiceProcess.ServiceControllerStatus.Stopped);
        btnStopService.Enabled = (control.Status == System.ServiceProcess.ServiceControllerStatus.Running);
    }
}

1 2 3 4 5 6  下一页

Tags:发现 之旅 开发

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接