Du skal refererer System.ServiceProcess... tilføje den under usings (eller direkte refererer til den nede i koden):
using System.ServiceProcess;
Og så er det basalt set bare at... --------------------------------
ServiceController controller = new System.ServiceProcess.ServiceController( "SQL Server (SQLEXPRESS)" );
controller.Stop(); controller.WaitForStatus( ServiceControllerStatus.Stopped, new TimeSpan( 0, 0, 30 ) );
Console.WriteLine( controller.Status );
controller.Start(); controller.WaitForStatus( ServiceControllerStatus.Running, new TimeSpan( 0, 0, 30 ) );
Console.WriteLine( controller.Status );
------------------------- Der er self lidt ting man skal være opmærksom på... så som services der er langsomme at starte, hvis en service fejler når man prøver at starte den, hvis den er startet eller i gang med det når man prøver at kalde start osv osv... men der er en start der....
Demonstrationen her var lige på min egen SQL Server Express Service som det nok kan ses... det er navnet på servicen... det er naturligvis muligt at hente alle services og undersøge deres status, så hvis du på forhånd ikke ved hvad en service hedder... men det lyder det lidt som om du gør... man kan også hente den på andet end navnet så vidt jeg husker... det er lige lidt tid siden jeg sidst legede med services...
Jamen det er de skal også (næsten), og ServiceController er ikke en af undtagelserne. Du skal dog tilføge en reference til System.ServiceProcess.dll under references ude i højre side af VS via din Solution Explorer:
Imports System.ServiceProcess
Module Module1
Sub Main() Dim controller As ServiceController = New System.ServiceProcess.ServiceController("SQL Server (SQLEXPRESS)")
controller.Stop() controller.WaitForStatus(ServiceControllerStatus.Stopped, New TimeSpan(0, 0, 30))
Console.WriteLine(controller.Status)
controller.Start() controller.WaitForStatus(ServiceControllerStatus.Running, New TimeSpan(0, 0, 30))
Som Nielle siger så er den der også i VB.NET... og jeg skulle måske være lidt mere præsis med hvad jeg mente med du skulle "Du skal refererer System.ServiceProcess", det er naturligvis DLL'en jeg snakker om her... ^^
Og endelig... hvorfor spørge om det i C# kategorien hvis det er VB.NET du skal have hjælp til. ^^... mon ikke der er nogle VB.NET Guruer i den kategori der kunne have hjulpet dig direkte... ohh well... no harm no faul... :P...
Har nogle gange oprettet spørgsmål i VB men der er ikke så mange der svarer i den kategori, så tit (aaahh ikke tit) spørger jeg i andre kategorier.. Hvis man bruger VStudio er der ikke meget der skal laves om i koden :-)
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.