イベントID4434 の修復方法( COM+、Complus)

このサイトを検索 | Search this site
warning

イベントID4434 /Complus

Windows 10 v1803 へアップデートしたタイミングで、イベントID4434、Complus の警告ログが記録されました。

このログは、コンポーネントサービスに問題があることを示唆しており、コンポーネントサービスを起動して、左ペインの [COM+アプリケーション] を選択した時にカタログエラーが表示されます。

正常な状態では、右ペインに [COM+ Utilities, System Application, ...] が表示されます。

修復方法

イベントID4434 を修復する方法を見つけたのでメモしておきます。参考にする場合は自己責任で実行してください。



イベントログ

イベントログ
メッセージCOM+ アプリケーションのオブジェクトに対するメソッドの呼び出しは、呼び出し側に権利がないために拒否されました。COM+ アプリケーションは、アプリケーションとコンポーネント レベルでのアクセス確認を行なうよう構成されており、これらの確認が使用可能になっています。呼び出し側が呼び出そうとしたコンポーネントのメソッドに関する情報および呼び出し側の ID に関する情報は、以下のとおりです。Svc/Lvl/Imp = 10/6/3, ID = DOMAIN\Username
ログの名前Application
ソースComplus
イベントID4434
レベル警告
ユーザーN/A
オペコード情報

正常な状態のスナップショット

正常な状態では右ペインに「COM+ アプリケーション」が表示される
COMアプリケーション修復後

修復方法

tweak

出典:support.microsoft.com

Windows Updateのバックアップファイルを利用して、COM+ (Complus) コンポーネントを復元することができます。

バックアップフォルダーは [C:\Windows\WinSxS] です。

1. 復元するファイル R000000000001.clb を探す

R000000000001.clbは複数のフォルダーで見つかりますが、amd64_microsoft-windows-com-complus-runtime_xxx を探します。xxxはPC固有のハッシュ値です。

C:\Windows\WinSxS\amd64_microsoft-windows-com-complus-runtime_31bf3856ad364e35_10.0.17134.1_none_3f4b4b693ddbf374\R000000000001.clb

2. R000000000001.clb をCドライブのルートにコピーする

管理者モードで起動したコマンドプロンプトで R000000000001.clb をCドライブのルートにコピーするかまたは、エクスプローラーのコピー&ペーストを利用します。

エクスプローラーを利用する時は、「このフォルダーへコピーするには管理者の権限が必要です」と表示されるので「続行」を選択します。

コマンドプロンプトを利用して修復する方法
管理者権限のコマンドプロンプトから、次の3つのコマンドを実行します
  1. CD %windir%\winsxs\
  2. CD *amd64*com-complus*runtime*
  3. Dir

R000000000001.clbが存在することを確認します。次に、次のコマンドを実行して、現在のディレクトリからCドライブのルートにコピーします。

copy R000000000001.clb C:\R000000000001.clb

c:\_
管理者:コマンド プロンプトー □ × 
C:\>CD %windir%\winsxs\
C:\>CD *amd64*com-complus*runtime*
C:\>Dir

ディレクトリの内容が表示されるので、R000000000001.clb が存在していることを確認したら、次のコマンドを実行する。

C:\>copy R000000000001.clb C:\R000000000001.clb

3. vbsスクリプトファイルを作成する

COM_Restore.vbs ファイルを作成してCドライブ直下に配置します。

Cドライブルートにファイルを保存すると、保存したファイルがエクスプローラーから見えなくなる可能性があるので、一旦別のフォルダーにファイルを保存してから、Cドライブにコピーするようにしましょう。

3-1. COM_Restore.txt を作成する
テキストエディターに以下のコマンドをコピーして、COM_Restore.txt の名前でマイドキュメントなどに保存します。
Dim objComCatalog

Set objComCatalog = CreateObject("COMAdmin.COMAdminCatalog")
objComCatalog.RestoreREGDB "C:\R000000000001.clb"

MsgBox "Backup Restored!"
Set objComCatalog = Nothing
3-2. COM_Restore.vbs にリネームする

COM_Restore.txt をCドライブ直下にコピーします。

この時、「このフォルダーへコピーするには管理者の権限が必要です」と表示されるので「続行」をクリックします。

コピーした COM_Restore.txt を COM_Restore.vbs にリネームします。

4. コマンドを実行する

管理者モードでコマンドプロンプトを起動して、次のコマンドを実行します。

>cscript C:\COM_Restore.vbs

c:\_
管理者:コマンド プロンプトー □ × 
C:\Windows\System32>cscript C:\COM_Restore.vbs

Backup Restored!と表示されたら成功です。

5. コンポーネントサービスを起動して確認する

コンポーネントサービス > コンソールルート > コンポーネントサービス > コンピューター > マイコンピューター > COM+アプリケーション

右ペインにCOM+アプリケーションが表示されるようになりました。

6. 手順終了

修復手順は以上です。

資料

カタログ エラー

文字起こし
「要求された操作を実行する権限がありません。ターゲット コンピューター上のシステム アプリケーションでセキュリティが有効になっている場合は、適切なロールに含まれているか確認してください。」
カタログエラー
[EventId 10016] Windows.SecurityCenter.WscBrokerManager (Complus)

[EventId 10016] Windows.SecurityCenter.WscBrokerManager (Complus)

お手上げ状態で放置していましたが、COM+アプリケーションエラーを修復したタイミングでエラーの記録が止まりました。

マイクロソフト公式の原文

Save the script to the root of C:\.

From the command prompt, run this command:
C:\cscript COM_Restore.vbs
Once you see the pop-up message stating that the backup is restored, restart the computer (this is required).

Finally, open Component Servers (dcomcnfg.exe) and see if you are still getting errors.
support.microsoft.com

まとめ

[EVENT ID 4434]
  • ソース:Complus
  • コンポーネントサービスの右ペインに「カタログエラー」が表示される。
  • COM+ (Complus) コンポーネントはバックアップから復元することが可能。
  • Windows Updateのバックアップファイルの場所:C:\Windows\WinSxS
  • コマンドプロンプト(管理者)を利用して復元する。

まとめ

matome
reload
  • イベントID4434 は、コンポーネントサービスに問題があることを示唆する警告ログです。
  • コンポーネントサービスを起動して、左ペインの [COM+アプリケーション] を選択すると、正常な状態では右ペインに [COM+ Utilities, System Application, ...] が表示されますが、イベントID4434 が発生している場合は、カタログエラーが表示されます。
  • COM+ (Complus) コンポーネントはバックアップから復元することが可能です。
  • Windows Updateのバックアップファイルの場所:C:\Windows\WinSxS
  • コマンドプロンプト(管理者)を利用して復元することができる。
  • complus | SC2
Scrap 2nd.

イベントログの対処方法 記事一覧|Scrap 2nd.

イベントログに記録された警告、エラーの対処履歴。DCOMエラーのなかでもRuntimeBrokerに起因するエラーは頻繁に記録される。DeviceSetupManager の警告(ID200,201,202)は頻繁に記録されるのでログが膨大になりやっかいだ。

検証:Windows 10 Pro April 2018, v1803
SC2
ブログサークルSNS
クリックして応援してね!
人気ブログランキングPVアクセスランキング にほんブログ村ブログランキング・にほんブログ村へ

このサイトを検索 | Search this site