この記事は、WMIFilter またはインストールされているアプリケーションを使用してグループ ポリシーが Win32_Product
クラスにクエリを実行したときに発生する、システムの起動速度の低下やログイン速度の低下の問題を解決するのに役立ちます。
元の KB 番号: 974524
症状
システムの起動が遅くなったり、ログインに時間がかかる問題が発生する可能性があります。 さらに、アプリケーション イベント ログに次のイベントが表示される場合があります。
ログ名: Application
ソース: MsiInstaller
日付: mmddyyy hh:mm:ss
イベント ID: 1035
タスク カテゴリ: なし
レベル: Information
キーワード: クラシック
ユーザー: SYSTEM
コンピューター:
説明:
Windows インストーラーによって製品が再構成されました。 製品名: <ProductName>。 製品バージョン: <VersionNumber>。 製品言語: <languageID>。 再構成の成功またはエラーの状態: 0。
このイベントは、コンピューターにインストールされているアプリケーションごとに表示されます。
システム イベント ログには、Windows インストーラー サービスが自動的に開始および停止していることを示します。
イベントの種類: 情報
イベント ソース: Service Control Manager
イベント カテゴリ: なし
イベント ID: 7035
日付: mmddyyyy
時間: hh:mm:ss
ユーザー: NT AUTHORITY\SYSTEM
コンピューター: <ComputerName>
説明:
Windows インストーラー サービスに開始コントロールが正常に送信されました。 詳細については、 <http://go.microsoft.com/fwlink/events.asp
>のヘルプおよびサポート センターを参照してください。
イベントの種類: 情報
イベント ソース: Service Control Manager
イベント カテゴリ: なし
イベント ID: 7036
日付: mmddyyyy
時間: hh:mm:ss
ユーザー: N/A
コンピューター: <ComputerName>
説明:
Windows インストーラー サービスが停止状態に入りました。
詳細については、 <http://go.microsoft.com/fwlink/events.asp
>のヘルプおよびサポート センターを参照してください。
原因
この問題は、次のいずれかの条件に該当する場合に発生する可能性があります。
- クラスにクエリを実行する WMIFilter を持つグループ ポリシー
Win32_Product
。 - クラスにクエリを実行するアプリケーションがコンピューター
Win32_Product
インストールされている。
解決方法
Win32_Product
クエリを実行する WMIFilter でグループ ポリシーを使用している場合は、Win32reg_AddRemovePrograms
を使用するようにフィルターを変更します。
前のクラスを使用するアプリケーションがある場合は、ベンダーに連絡して、このクラスを使用しない更新バージョンを入手してください。
問題の原因となるアプリケーションを絞り込むには、 Clean boot トラブルシューティング方法に従います。
Note
Win32Reg_AddRemovePrograms
を使用するには、System Center Configuration Manager (SCCM) クライアントをインストールする必要があります。 SCCM がインストールされていない場合は、代わりに StdRegProv クラスを使用します。
詳細
Win32_product
クラスはクエリ最適化されていません。 select * from Win32_Product where (name like 'Sniffer%')
などのクエリでは、WMI で MSI プロバイダーを使用してインストールされているすべての製品を列挙し、完全な一覧を順次解析してwhere
句を処理する必要があります。 このプロセスでは、インストールされているパッケージの整合性チェック、確認、およびインストールの修復も開始されます。 ユーザー特権のみを持つアカウントでは、アプリケーションの起動に遅延が発生し、インストールエラーを示すイベント 11708 が発生する可能性があります。これは、ユーザー アカウントが非常に多くの場所にアクセスできない可能性があるためです。
Win32reg_AddRemovePrograms
は、特にロックダウンされた環境で回復性チェックを実行する呼び出しを回避する、非常に軽量で効果的な方法です。 そのため、 Win32reg_AddRemovePrograms
を使用する場合、msiprov.dllを呼び出す必要はなくなり、回復性チェックは開始されません。