強制的にWindowsサービスを削除する方法について説明する。
これは、興味本位で利用せず、きちんと削除してよいWindowsサービスかどうかはっきりしている場合に利用すること。
Windowsサービスの削除には、sc.exeというサービス管理用のユーティリティを利用する。このユーティリティは、Windowsのバージョンによっては組み込まれていない機能であるため、環境に注意すること。
詳細は、以下の通り。
これは、興味本位で利用せず、きちんと削除してよいWindowsサービスかどうかはっきりしている場合に利用すること。
Windowsサービスの削除には、sc.exeというサービス管理用のユーティリティを利用する。このユーティリティは、Windowsのバージョンによっては組み込まれていない機能であるため、環境に注意すること。
詳細は、以下の通り。
【Windows 2000の場合】
Windows 2000のリソースキットからsc.exeを追加インストールする。
【Windows XPの場合】
sc.exeは、標準でインストールされている。
コマンドプロンプトで以下を入力することでサービスを削除することができる。
※サービス名は、[コントロールパネル]-[管理ツール]-[サービス]でサービスをダブルクリックすると表示されるサービスの詳細情報に記述されている「サービス名」を設定すること!
以下、独自で追加した「test」というサービスを削除する場合を例に説明。
1.コマンドプロンプトを起動します。
[スタート]-[プログラム]-[アクセサリ]-[コマンドプロンプト]を実行する。
2.以下のコマンドを入力します。
※「C:\>」の部分は、カレントディレクトリ(現在参照中のフォルダ名)が自動的に表示されます。「sc.exe」以降を入力して下さい。
【補足事項】
・上記の機能を使うのは、主に以下の状況に陥った場合です。
1.アプリケーションソフトのアンインストールに失敗してWindowsサービスだけが残ってしまった
2.Windowsサービスを開発中、アンインストール用のプログラムを組み忘れた状態でテストしてしまい、サービスが削除できなくなってしまった。
私の場合は、2のケースに陥ってしまい、上記の方法を知りました。
古いサービスを削除しないと新しいサービスをインストールできなかったので…本来ならば、インストール時に古いサービスを削除しておけば良かったのですが、実装技術の確認段階だったので気が回りませんでした。
きっと、こういう失敗した後でなければ、こんなこと調べないんだよなぁ…なんて思いました。
Windows 2000のリソースキットからsc.exeを追加インストールする。
【Windows XPの場合】
sc.exeは、標準でインストールされている。
コマンドプロンプトで以下を入力することでサービスを削除することができる。
sc.exe delete [サービス名]
※サービス名は、[コントロールパネル]-[管理ツール]-[サービス]でサービスをダブルクリックすると表示されるサービスの詳細情報に記述されている「サービス名」を設定すること!
以下、独自で追加した「test」というサービスを削除する場合を例に説明。
1.コマンドプロンプトを起動します。
[スタート]-[プログラム]-[アクセサリ]-[コマンドプロンプト]を実行する。
2.以下のコマンドを入力します。
C:\> sc.exe delete test
※「C:\>」の部分は、カレントディレクトリ(現在参照中のフォルダ名)が自動的に表示されます。「sc.exe」以降を入力して下さい。
【補足事項】
・上記の機能を使うのは、主に以下の状況に陥った場合です。
1.アプリケーションソフトのアンインストールに失敗してWindowsサービスだけが残ってしまった
2.Windowsサービスを開発中、アンインストール用のプログラムを組み忘れた状態でテストしてしまい、サービスが削除できなくなってしまった。
私の場合は、2のケースに陥ってしまい、上記の方法を知りました。
古いサービスを削除しないと新しいサービスをインストールできなかったので…本来ならば、インストール時に古いサービスを削除しておけば良かったのですが、実装技術の確認段階だったので気が回りませんでした。
きっと、こういう失敗した後でなければ、こんなこと調べないんだよなぁ…なんて思いました。
thx!!