Jak mogę uruchomić i zatrzymać usługę Windows z aplikacji C# Form?Start stop Service from Form App C#
Odpowiedz
Dodaj odwołanie do System.ServiceProcess.dll
. Następnie możesz użyć klasy ServiceController.
Można zrobić to w ten sposób, Details of Service Controller
ServiceController sc = new ServiceController("your service name");
if (sc.Status == ServiceControllerStatus.Stopped)
{
sc.Start();
}
Podobnie można zatrzymać za pomocą metody zatrzymania
sc.Stop();
go nie rozpoznaje, używając System.ServiceProcess; - używam .net 4 – AlexandruC
Dodaj przestrzeń nazw, prawdopodobnie brakuje jej. – edocetirwi
Najpierw dodaj odniesienie do zestawu System.ServiceProcess.
Aby rozpocząć:
ServiceController service = new ServiceController("YourServiceName");
service.Start();
var timeout = new TimeSpan(0, 0, 5); // 5seconds
service.WaitForStatus(ServiceControllerStatus.Running, timeout);
Aby zatrzymać:
ServiceController service = new ServiceController("YourServiceName");
service.Stop();
var timeout = new TimeSpan(0, 0, 5); // 5seconds
service.WaitForStatus(ServiceControllerStatus.Stopped, timeout);
Oba przykłady pokazują, jak czekać, aż usługa osiągnęła nowy status (bieganie, zatrzymał się ... itd.). Parametr limitu czasu w WaitForStatus jest opcjonalny.
nie rozpoznaje tego przy użyciu System.ServiceProcess; - używam .net 4 – AlexandruC
Powinien działać dobrze, ale musisz dodać odniesienie do System.ServiceProcess. –
Dobrze! głupi ja. dzięki. wyraźny! – AlexandruC
jest brudniejsze, ale same same ..
tylko wykonywać polecenia powłoki
NET STOP "MYSERVICENAME"
NET START "MYSERVICENAME"
// Check whether the U-TEST RTC service is started.
ServiceController sc = new ServiceController();
sc.ServiceName = "U-TEST RTC";
m_objMainChainRTC.m_objUC.ValidationLogMessages(String.Format(LocalizeDictionary.Instance.GetLocalizedValue("MsgStatusService"), sc.Status.ToString()), Alstom.Automation.Forms.ViewModels.RTCAutomationViewModel.ColorLog.Log);
if (sc.Status == ServiceControllerStatus.Stopped)
{
m_objMainChainRTC.m_objUC.ValidationLogMessages(String.Format(LocalizeDictionary.Instance.GetLocalizedValue("MsgStartService")), Alstom.Automation.Forms.ViewModels.RTCAutomationViewModel.ColorLog.Log);
try
{
// Start the service, and wait until its status is "Running".
sc.Start();
var timeout = new TimeSpan(0, 0, 5); // 5seconds
sc.WaitForStatus(ServiceControllerStatus.Running, timeout);
m_objMainChainRTC.m_objUC.ValidationLogMessages(String.Format(LocalizeDictionary.Instance.GetLocalizedValue("MsgNowService"), sc.Status.ToString()), Alstom.Automation.Forms.ViewModels.RTCAutomationViewModel.ColorLog.Log);
}
catch (InvalidOperationException)
{
m_objMainChainRTC.m_objUC.ValidationLogMessages(String.Format(LocalizeDictionary.Instance.GetLocalizedValue("MsgExceptionStartService")), Alstom.Automation.Forms.ViewModels.RTCAutomationViewModel.ColorLog.Log);
}
}
- 1. Start/Stop Service z Widget
- 2. Media start start stop start
- 3. Android: stop/start usługę powstałą w onCreate()
- 4. Powłoki start/stop dla skryptu Pythona
- 5. start-stop-daemon cytowane argumenty błędnieinterpretowane
- 6. start-stop-daemon i program java
- 7. Hide facebook app from search
- 8. Jaka jest różnica między "IsEnabled" i "Start/Stop" w DispatcherTimer?
- 9. start/stop wojnę poprzez JMX w/JBoss EAP 5.1
- 10. Jak narysować łuk o promieniu a start i stop kąt
- 11. Gdzie mogę rejestrować zdarzenia start/stop/błędu aplikacji ASP.NET Core?
- 12. boto3 start/stop wystąpienie RDS z AWS Lambda
- 13. Debian start-stop-daemon. Java rozpocząć JAR Plik
- 14. Limit czasu polecenia cmdlet stop-service jest możliwy?
- 15. Stop: Nieznana instancja mongodb (Ubuntu)
- 16. C# Programowo Unminimize form
- 17. Objective-c form framework
- 18. Zastosowanie Foreman Start Rack App Znajduje się w innym katalogu
- 19. C# get string from textbox
- 20. God stop pracowników resake prowizji
- 21. Rest Web Service z App Engine i Webappem
- 22. kątowa 2 Szybki start - mój-app składnik nie ładuje
- 23. Błąd w NodeNode start
- 24. Start Bit vs Start Byte
- 25. pręt zbrojeniowy: wyjście błędu w create-app: {crypto, start, []}
- 26. Stop Spinner.js
- 27. Stop na pierwszym błędzie
- 28. Nie można użyć polecenia service z debian 8 (Jessie)
- 29. C++ memcpy to char * from c_str
- 30. Cykl życia Applet: jaka jest praktyczna różnica między init() i start() i destroy() i stop()?
nie rozpoznaje tego przy użyciu System.ServiceProcess; - używam .net 4 – AlexandruC
@lxClan dodaj odniesienie do twojego projektu – Zbigniew
Zaktualizowałem odpowiedź z referencją, którą musisz dodać. –