web-dev-qa-db-ja.com

Windowsサービスを再起動するためのデスクトップショートカット

Windowsサービスを再起動するWindowsデスクトップショートカットを作成することは可能ですか?

設定ファイルに変更を加えた後、Apacheサービスを再起動するボタンが欲しいのですが。

32
Jon Winstanley

これをバッチファイルで実行してから、そのショートカットを作成できます。

次の内容のテキストファイルを作成し、ファイル拡張子.batを付けて保存します。

net stop "Service Name"
net start "Service Name"

ファイルが作成されたら、そのファイルへのショートカットを作成し、必要に応じてキーボードショートカットを割り当てることもできます。

39
Daniel A. White

次のショートカットターゲットを使用すると、バッチファイルなしでこれを実現できます。

C:\Windows\System32\cmd.exe /c "net stop "Service Name" & net start "Service Name""

回答に加えて、Tiboによる次のコメントは必須です。

管理者として実行するには(一部のサービスで必要な場合がありますが、すべてですか?)、ショートカットのプロパティウィンドウの[ショートカット]タブで、[下部にある]ボタンをクリックし、[管理者として実行]をオンにします。毎回ユーザーアカウント制御ポップアップを開きます。

20
Jason

単純なCMDバッチスクリプトとLNKショートカットで構成されるシステムを使用しています。バッチスクリプトには、Windowsサービスコントローラとして機能する sc command が含まれています。サービスの開始または停止には、 netコマンド と同じパラメーターを使用します。

sc <start|stop> <service>

したがって、たとえばApache WebサーバーサービスとMySQLデータベースサーバーサービスを開始する場合、web_servers_start.cmdという名前のバッチスクリプトは次のようになります。

sc start "Apache2.2"
sc start MySQL

バッチスクリプトは、管理者として昇格して起動する必要があります。そこで、バッチスクリプトweb_servers_start.cmdを指すLNKショートカットを作成し、「管理者として実行」をチェックしましたショートカットタブの[詳細... "ボタンの下にあるファイルのプロパティダイアログ。

LNKショートカットは、デスクトップ、スタートメニュー、または任意の場所に配置できます。

注:scコマンドとnetコマンドの違いの1つは、scがメッセージを送信することです(例:start)をサービスに送信し、netがサービス操作が完了するまで待機する間、すぐに終了します。操作ステータスやエラーコードを操作する必要がない場合は、scコマンドの方がはるかに高速です。