ServiceController.Start 方法

定义

启动服务。Starts the service.

重载

Start()

启动服务,不传递任何自变量。Starts the service, passing no arguments.

Start(String[])

启动服务,传递指定的参数。Starts a service, passing the specified arguments.

Start()

启动服务,不传递任何自变量。Starts the service, passing no arguments.

public:
 void Start();
public void Start ();
member this.Start : unit -> unit
Public Sub Start ()

例外

访问 API 时出错。An error occurred when accessing a system API.

未找到服务。The service was not found.

示例

下面的示例使用 ServiceController 类来检查警报器服务是否已停止。The following example uses the ServiceController class to check whether the Alerter service is stopped. 如果服务已停止,则此示例将启动该服务并等待,直到服务状态设置为 RunningIf the service is stopped, the example starts the service and waits until the service status is set to Running.

// Check whether the Alerter service is started.
ServiceController^ sc = gcnew ServiceController;
if ( sc )
{
   sc->ServiceName =  "Alerter";
   Console::WriteLine(  "The Alerter service status is currently set to {0}", sc->Status );
   if ( sc->Status == (ServiceControllerStatus::Stopped) )
   {
      // Start the service if the current status is stopped.
      Console::WriteLine(  "Starting the Alerter service..." );
      try
      {
         // Start the service, and wait until its status is "Running".
         sc->Start();
         sc->WaitForStatus( ServiceControllerStatus::Running );
         
         // Display the current service status.
         Console::WriteLine(  "The Alerter service status is now set to {0}.", sc->Status );
      }
      catch ( InvalidOperationException^ e ) 
      {
         Console::WriteLine(  "Could not start the Alerter service." );
      }
   }
}

// Check whether the Alerter service is started.

ServiceController sc  = new ServiceController();
sc.ServiceName = "Alerter";
Console.WriteLine("The Alerter service status is currently set to {0}",
                   sc.Status.ToString());

if (sc.Status == ServiceControllerStatus.Stopped)
{
   // Start the service if the current status is stopped.

   Console.WriteLine("Starting the Alerter service...");
   try
   {
      // Start the service, and wait until its status is "Running".
      sc.Start();
      sc.WaitForStatus(ServiceControllerStatus.Running);

      // Display the current service status.
      Console.WriteLine("The Alerter service status is now set to {0}.",
                         sc.Status.ToString());
   }
   catch (InvalidOperationException)
   {
      Console.WriteLine("Could not start the Alerter service.");
   }
}

' Check whether the Alerter service is started.

Dim sc As New ServiceController()
sc.ServiceName = "Alerter"
Console.WriteLine("The Alerter service status is currently set to {0}", sc.Status)

If sc.Status = ServiceControllerStatus.Stopped Then
   ' Start the service if the current status is stopped.
   Console.WriteLine("Starting the Alerter service...")

   Try
      ' Start the service, and wait until its status is "Running".
      sc.Start()
      sc.WaitForStatus(ServiceControllerStatus.Running)
      
      ' Display the current service status.
      Console.WriteLine("The Alerter service status is now set to {0}.", sc.Status)
   Catch 
      Console.WriteLine("Could not start the Alerter service.")
   End Try
End If

注解

Stop 服务控制器状态为之前,你无法调用服务 RunningYou cannot call Stop for the service until the service controller status is Running.

另请参阅

适用于

Start(String[])

启动服务,传递指定的参数。Starts a service, passing the specified arguments.

public:
 void Start(cli::array <System::String ^> ^ args);
public void Start (string[] args);
member this.Start : string[] -> unit
Public Sub Start (args As String())

参数

args
String[]

在服务启动时传递给它的自变量数组。An array of arguments to pass to the service when it starts.

例外

访问 API 时出错。An error occurred when accessing a system API.

服务无法启动。The service cannot be started.

argsnullargs is null.

- 或 --or- 该数组的一个成员是 nullA member of the array is null.

注解

Stop 服务控制器状态为之前,你无法调用服务 RunningYou cannot call Stop for the service until the service controller status is Running.

另请参阅

适用于