自分用 memoφ(.. )
【現象】
Windows XP や Windows Server 2003 で Automatic Updates サービス (wuauserv) を開始させようとすると、次のようなメッセージが出てサービスを起動することができないことがあります。
- Error 0x80004015: 呼び出し元とは別のセキュリティ ID で実行するように、クラスが構成されています。
- Error 0x80004015: The class is configured to run as a security id different from the caller.
【原因】
原因はたいていの場合、セキュリティ・レベルの厳しいグループ ポリシーやセキュリティ テンプレートを適用して、サービス起動のための権限まで奪ってしまうことにあります。
【回避策】
本来は、適用したセキュリティ テンプレートとかで正しい権限を付与しなおすことが最適解ですが、とりえあずサービスをあげれれば良い(たとえば Windows Update したい)というときにはもっと簡単な回避策があります。
コマンドラインから
regsvr32 /u wuaueng.dll
regsvr32 wuaueng.dll
と続けて入力し、DLL (Windows Update AutoUpdate Engine) の再登録を行います。
ほとんどの場合はこれだけで、再度 Automatic Updates サービスの開始を試みるとうまくいきます。
ただし原因が"アクセス権"にある場合、一度は修復されたように見えてもしばらくするとまたエラーが発生する可能性があります。 Automatic Updates サービスは Authenticated Users での実行権限が必要になるケースがあるのですが、Group Policy でこのサービスのスタートアップの種類を指定した場合などに、この権限が予期せず削除されてしまうという仕様があるのです。
この場合、Group Policy であればスタートアップの種類を指定すると同時にサービスのアクセス権で Authenticated Users - Modify の権限を付与します。
Group Policy では指定できない事情がある場合は、sc sdset コマンドやセキュリティテンプレートを使用して構成することができます。
---
KB 上にも類似した情報はいろいろあったんですがドンピシャなものがなかったので、KB風に書いてみました。