Windowsのサービスのパスを変更する

普段私は単品でインストールしたApacheを使っているのですが、訳あってXAMPPをちょっとインストールすることに。

いろいろと動作テストをして、目的を達成したのでアンインストールしました。

……ところが、それ以降Apacheを起動させようとしても、起動時にエラー(The requested operation has failed!)が発生するようになってしまいました。

イベントログを見てみると、

Apache2.2 サービスは次のエラーのため開始できませんでした:
指定されたパスが見つかりません。

とのことです。

Windowsのコントロールパネル→管理ツールからサービスを起動させて、Apacheの実行ファイルのパス欄を見てみたら、予想通り、XAMPPのパスが登録されていました。

C:\xampp\apache\bin\httpd.exe" -k runservice

先ほどインストールしたXAMPPにてあやまった操作をしてしまった(たぶんサービスに登録しちゃった)ため、パスを書き換えてしまったんですね。

しかしこの実行ファイルのパス欄は、変更ができません。
おそらくレジストリに登録されているんだと思いさくっと検索して解決したのでメモします。

解決方法

レジストエディタを起動

まずはレジストリエディタを起動します。
Windowsのスタートから、ファイル名を指定して実行→regeditと入力してOKをクリックで、レジストリエディタを起動します。

レジストリエディタの使用を間違えると、Windowsが正常に起動し合いなどの弊害が起こる可能性があります。自己責任においてご利用ください。

パス(ImagePath)を変更

下記をたどっていきます。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\

ここまで来てから、希望のサービス名を選択します。右ペインに、ImagePathとありますので、それを変更すればOK。

私の場合は、元のApacheのパスに変更しました。

"C:\Program Files\Apache Software Foundation\Apache2.2\bin\httpd.exe" -k runservice

これで無事解決です!

コメント

タイトルとURLをコピーしました