我想使用Inno Setup在[Icons]
部分使用命令提示符重新啓動Windows服務。請幫我解決問題。如何使用命令提示符重新啓動服務?
回答
您可以使用sc start [service]
開始服務,並使用sc stop [service]
來停止它。有些服務net start [service]
正在做同樣的事情。
但是,如果您想在同一批次中使用它,請注意sc stop
不會等待服務停止。在這種情況下,您必須使用net stop [service]
,然後使用net start [service]
。這將同步執行。
使用sc start + sc stop對我無效(起始部分不起作用)。但是使用net stop + net start確實有效! –
您是否嘗試過爲服務名稱使用引號? – senyor
'sc'有問題,它不會等待開始/停止完成,它只向服務發送開始/停止請求 - 所以你不能'停止Foo && sc開始Foo',因爲它失敗 - 它會在完成停止之前嘗試啓動服務。 'net'是在這裏使用的正確的,因爲它等待開始/停止完成。 –
您可以使用SC命令啓動和停止並查詢服務。至於innosetup我不確定。
您可以創建一個.BAT文件與以下內容:
net stop "my service name"
net start "my service name"
要重新啓動正在運行的服務:
net stop "service name" && net start "service name"
但是,如果你不知道,如果服務首先運行並希望重新啓動或啓動它,請使用:
net stop "service name" & net start "service name"
這適用於服務已經運行或沒有運行。
作爲參考,這裏是關於條件處理符號的documentation。
帶'||'的第二個版本非常不正確 - 如果服務正在運行,它將被停止,命令成功並且第二個命令根本不會被執行。嘗試'回聲||回聲b' –
很好,我的壞。現在修復它! –
這是我的代碼,使用SC
命令啓動/停止Windows服務。如果服務無法啓動/停止,它將打印日誌信息。你可以試試Inno Setup。
{ start a service }
Exec(ExpandConstant('{cmd}'), '/C sc start ServiceName', '',
SW_HIDE, ewWaitUntilTerminated, ResultCode);
Log('sc start ServiceName:'+SysErrorMessage(ResultCode));
{ stop a service }
Exec(ExpandConstant('{cmd}'), '/C sc stop ServiceName', '',
SW_HIDE, ewWaitUntilTerminated, ResultCode);
Log('sc stop ServiceName:'+SysErrorMessage(ResultCode));
- 1. 如何使用命令提示符重新啓動jboss服務器
- 2. 如何重新啓動C++命令提示符應用程序?
- 3. Jetty 8服務器僅使用命令提示符啓動
- 4. 如何從命令提示符啓動SQL Server 2008服務?
- 5. 命令提示符:檢查Windows服務是否啓動
- 6. Rails - 啓動服務器後沒有命令提示符?
- 7. 如何使用Python子進程啓動Windows命令提示符?
- 8. 重啓後命令提示符更改
- 9. 從命令提示符啓動Visual Studio
- 10. 如何使用saxon9命令提示符
- 11. 如何使用命令提示符
- 12. 使用命令提示符
- 13. 使用命令提示符
- 14. 使用命令提示符
- 15. 如何重新啓動服務器後重新啓動RoR服務
- 16. 重新啓動服務器後重新啓動WCF服務
- 17. 發送重新加載命令以啓動服務
- 18. 命令重新啓動Squid代理服務器?
- 19. Redis-cli命令重新啓動redis服務器
- 20. 使用git命令提示符時啓動git時出錯
- 21. 在Windows提示符下使用一個啓動命令執行3個命令
- 22. 如何啓動/停止使用net stop命令服務
- 23. 如何從命令提示符啓動Gvim?
- 24. 如何從命令提示符啓動程序員記事本
- 25. 使用shell_exec()重新啓動服務器?
- 26. 使用命令提示符安裝windows服務
- 27. Ubuntu - 通過命令提示符使用Web服務
- 28. 如何使用ng服務器後的命令提示編譯
- 29. 如何使用命令重新啓動python腳本
- 30. 如何使用VBA運行命令提示符並在失敗時重新啓動?
我不是給[回答這個(http://stackoverflow.com/questions/7803337/how-to-run-windows-start-service-using -inno-setup/7804288#7804288)上次詢問時的評論? 使用小包裝EXE來提供清單以提供所需的權限並啓動/重新啓動服務。 – Deanna
這個問題是無題的,因爲它問'如何在命令提示符下重新啓動服務',而不是特定於innosetup。 – cybermonkey