Windows 服务是否执行和状态

2023-02-20 15:13:56 浏览数 (1)

Windows服务(即,以前的NT服务,以下简称WIN服务)使您能够创建在它们自己的 Windows 会话中可长时间运行的可执行应用程序。这些服务可以在计算机启动时自动启动,可以暂停和重新启动而且不显示任何用户界面。这种服务非常适合在服务器上使用,或任何时候,为了不影响在同一台计算机上工作的其他用户,需要长时间运行功能时使用。还可以在不同于登录用户的特定用户帐户或默认计算机帐户的安全上下文中运行服务。

WIN服务基本是Windows开发的常要做的事情,所以判断一个WIN服务是否正常就成了一个事关程序正常与否的必修科。我门今天就来说一下怎么进行WIN服务的判断。首先需要引入一个Win自带的程序集:System.ServiceProcess 然后再导入这个命名空间:using System.ServiceProcess。 OK,前期工作搞掂,到代码。。

先将当前的服务进程进行获取。。

代码语言:javascript复制
var SControllers = ServiceController.GetServices();

这样SControllers就获得当前WIN的服务进程,然后我们就对这个服务进程判断有没有我们需要的。

代码语言:javascript复制
var Check_server = SControllers.FirstOrDefault(service => service.ServiceName.Contains("服务名"));

判断有则可以再通过服务状态进行判断是否运行重

代码语言:javascript复制
 if (server.Status != ServiceControllerStatus.Running)//判断服务是否启动
 {
 DialogResult dr = MessageBox.Show("当前服务还没启用,是否启用?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
    if (dr == DialogResult.OK)
      server.Start(); 
 }

以上就是判断到服务还没启动,然后咨询用户是否启动。

另外有启动当然有停止,有停止当然也有暂停&继续和刷新。。

代码语言:javascript复制
server.Stop();
server.Pause();
server.Continue();
server.Refresh();

好,以上就是Windows的服务一些小操作.。

0 人点赞