Windows10でDCOMイベントID10016エラーを修正する方法

本日の投稿では、原因を特定し、Windows 10の通常の操作中にWindowsイベントビューアに表示される可能性のあるDCOM(DistributedCOM)イベントID10016エラーの問題に対する可能な解決策を提供します。

分散コンポーネントオブジェクトモデル(DCOM)は、Windowsコンピュータ上のネットワーク通信に不可欠な側面です。これは、アプリケーションがインターネットに接続するたびに動作するMicrosoft独自のテクノロジです。従来のCOMは同じマシン上の情報にのみアクセスできますが、DCOMはリモートサーバー上のデータにアクセスできます。

たとえば、多くのWebサイトやサービスは、リモートサーバーにアクセスするスクリプトを使用しています。システムがスクリプトなどを使用して要求を行うと、DCOMはその要求を特定のスクリプトオブジェクトに転送します。最近のアプリケーションがネットワーク接続を使用する頻度とコンピューターの一般的な使用法を考えると、DCOMが使用される頻度を確認できます。

DCOMイベントID10016エラー

DCOMイベントID10016エラー

Windows 10、Windows Server 2016、Windows Server 2019、Windows Server、バージョン1903、またはWindows Server1909を実行しているコンピューターのシステムイベントログに記録された以下のイベント10016に気付く場合があります。

出典:Microsoft-Windows-DistributedCOM

イベントID:10016

説明:アプリケーション固有のアクセス許可設定は、CLSIDを持つCOMサーバーアプリケーションのローカルアクティベーションアクセス許可を付与しません

{D63B10C5-BB46-4990-A94F-E40B9D520160}

およびAPPID

{9CA88EE3-ACB7-47C8-AFC4-AB702511C276}

アプリケーションコンテナで実行されているローカルホストアドレス(LRPCを使用)からユーザーNT AUTHORITY \ SYSTEM SID(S-1-5-18)へUnavailable SID(Unavailable)。このセキュリティ権限は、コンポーネントサービス管理ツールを使用して変更できます。

通常、イベントビューアに記録された上記のエラーが発生します。ただし、イベントID10016エラーにはさまざまなバリエーションがあることに注意してください。それでも、エラーを軽減する手順は基本的に同じです。

DCOMエラーは通常、アプリケーションまたはサービスがDCOMを使用しようとしたが、適切なアクセス許可がない場合に発生します。ほとんどの場合、DCOMエラーは、イベントビューアを詰まらせることを除いて、システムに影響を与えません。これらの10016イベントは、Microsoftコンポーネントが必要なアクセス許可なしでDCOMコンポーネントにアクセスしようとしたときに記録されます。この場合、これは予期されたものであり、設計によるものです。

DCOMエラーは心配する必要はありません。無視しても問題ありません。ただし、イベントID10016エラーが発生するたびに解決するために従うことができる手順があります。

DCOMイベントID10016エラーを解決する方法

この問題を解決するために、Microsoftは、DCOMイベントID10016エラーを抑制するXMLフィルターを作成することをお勧めします。

方法は次のとおりです。

  • イベントビューアを開きます(Windowsキー+ Rを押します。[ファイル名を指定して実行]ダイアログボックスで、eventvwrと入力し、Enterキーを押します)。
  • Windowsログ>システムをクリックします
  • [操作]ウィンドウで[現在のログをフィルタリング]をクリックします
  • [XML]タブを選択し、[クエリを手動で編集する]オプションをオンにします。
  • 次のXMLテキストをコピーしてフィルターダイアログに貼り付けます。
  * * [System [(EventID = 10016)]]および* [EventData [(Data [@ Name = ' param4 '] and Data = "{D63B10C5-BB46-4990-A94F-E40B9D520160}" and Data [@ Name = ' param5 '] and Data = "{9CA88EE3-ACB7-47C8-AFC4-AB702511C276}" and Data [@ Name =' param8 '] and Data = "S-1-5-18")または(Data [@ Name =' param4 '] and Data = "{260EB9DE-5CBE-4BFF-A99A-3710AF55BF1E}" and Data [@ Name =' param5 '] and Data = "{260EB9DE-5CBE-4BFF-A99A-3710AF55BF1E}")または(Data [ @ Name = ' param4 '] and Data = "{C2F03A33-21F5-47FA-B4BB-156362A2F239}" and Data [@ Name = ' param5 '] and Data = "{316CDED5-E4AE-4B15-9113-7055D84DCC97}" andデータ[@Name = 'param8 ']およびData = "S-1-5-19")または(Data [@ Name =' param4'] and Data = "{6B3B8D23-FA8D-40B9-8DBD-B950333E2C52}" and Data [@ Name =' param5 '] and Data = "{4839DDB7-58C2-48F5-8283-E1D1807D0D7D}" and Data [@ Name = ' param8 ']およびData = "S-1-5-19")]]   

このクエリでは、param4のCOMサーバーアプリケーションのCLSIDに対応し、param5 APPIDに対応し、param8の10016のイベントログに記録されているすべてのそれらのセキュリティコンテキストのSIDに対応し、。

  • [ OK]をクリックします。

イベントID10016のDCOMエラーエントリが非表示になりました。

または、レジストリエディタとDCom構成ツールを使用してDCOMアクセス許可の問題を修正することもできます。

方法は次のとおりです。

この修正にはレジストリの調整が含まれるため、予防措置として、レジストリをバックアップするか、システムの復元ポイントを作成することをお勧めします。

イベントがログに記録されないようにするには、次の手順に従って、特定のCLSIDとAPPIDを持つDCOMコンポーネントにアクセス許可を付与します。

まず、エラーにリストされているクラスIDに関連付けられているプロセスまたはサービスを特定する必要があります。これを行うには、先に進み、イベントの説明にリストされているCLSIDをコピーします。この場合、{D63B10C5-BB46-4990-A94F-E40B9D520160}です。中括弧も両方ともコピーしてください。

次に、レジストリエディタを起動します。レジストリエディタを開いていた場合、をクリックして編集して、検索。先に進み、CLSIDを検索ボックスに貼り付けて、Enterキーを押します。

The registry will now initiate a search. After some time, you should get a result under the HK_CLASSES_ROOT\CLSID key. On the right-hand side, it should have two keys and the Default one should list out the name of the service. In this case, it should be RuntimeBroker.

Now that you have identified the process, you can now proceed as follows to fix the error.

  • Still, in the registry editor, navigate to the following AppID key associated with the RuntimeBroker:

HKEY_CLASSES_ROOT\AppID\{9CA88EE3-ACB7-47C8-AFC4-AB702511C276}

By default, TrustedInstaller owns this registry key and its subkeys. Set Administrator as the owner of the key and its subkeys. See how to take ownership of registry keys for more information.

  • After setting Administrators as the owner, assign Administrators group and SYSTEM account have Full Control permission for the key and subkeys.
  • Exit the Registry Editor.

Next, start the DCOM Configuration tool (press Windows key + R. In the Run dialog box, type dcomcnfg.exe and hit Enter.

  • Click Component Services >Computers >My Computer >DCOM Config.
  • Right-click the application that corresponds to the AppID that’s recorded in the event log, and then select Properties.

The application name in this example is RuntimeBroker which we identified earlier. If the DCom Config tool lists two RuntimeBroker entries. To find the right one, right-click on an item and click Properties and match the App ID with the one in the registry.

  • Select the Security tab.
  • Under Launch and Activation Permissions, select Customize, and click Edit.

If the Edit button is grayed out in RuntimeBroker application Properties page in DCOM Config, you’ll need to verify the AppID registry key permissions.

  • Under Group or user names, select Add.
  • イベントログに記録されているグループ名またはユーザー名を入力します。たとえば、ログに記録されるアカウントは、NT AUTHORITY \ NETWORK SERVICENT AUTHORITY \ SYSTEM、またはその他のグループやアカウントである可能性があります。
  • [ OK]をクリックします。
  • 追加したユーザーまたはグループにローカルアクティベーション権限を割り当て、プロセスを完了します。

この手順により、DCOMアクセス許可に関連するイベントログエラーイベントID:10016が防止されます。

:Microsoftは、このエラーがログに記録されないようにDCOMコンポーネントのアクセス許可を変更する方法を推奨していません。これらのエラーは機能に悪影響を与えず、アクセス許可を変更すると意図しない副作用が発生する可能性があるためです。

お役に立てれば!