分析
このQueryAppBlock.exeファイルには、Windows 7 SP1に適用されるKB2952664更新プログラムが付属しています。公式のドキュメントはありません。以下に、私が収集した情報があります。
カスタマーエクスペリエンス向上プログラム(CEIP)
CEIPは、お客様がマイクロソフトプログラムをどのように使用しているか、および発生した問題のいくつかに関する情報を収集します。マイクロソフトはこの情報を使用して、顧客が最も頻繁に使用する製品と機能を改善し、問題の解決に役立てます。
出典:マイクロソフトカスタマーエクスペリエンス向上プログラム
オプトインすると、Windowsはシステムに関する統計情報を収集します。集約されたデータの概要は、Microsoftサーバーに定期的にアップロードされます。
送信される情報には、コンピューターのハードウェア構成に関する詳細(プロセッサーの数や画面解像度など)、パフォーマンスと信頼性(ボタンをクリックしたときのプログラムの応答速度など)、およびシステムの使用に関する情報(ユーザーが通常デスクトップ上に作成するフォルダーの数など)。
出典:Windowsカスタマーエクスペリエンス向上プログラムおよびWindows 7およびWindows Server 2008 R2でのインターネット通信の結果
KB2952664
この更新プログラムは、最新バージョンのWindowsへのアップグレードエクスペリエンスを容易にするために、Microsoftが現在のオペレーティングシステムを改善するのに役立ちます。
ソース:Windows 7をアップグレードするための互換性更新
説明はかなりあいまいですが、実際に行うのは、Windows 7にバンドルされているアプリケーションテレメトリライブラリの更新です。特に、この更新は、新しいオペレーティングシステム(つまり、Windows 8.x 。)。
これらのファイルは更新されます:
C:\Windows\System32\aeinv.dll
C:\Windows\System32\aepdu.dll
C:\Windows\System32\aepic.dll
そして、これらが追加されます:
C:\Windows\System32\CompatTel\aeinv.dll
C:\Windows\System32\CompatTel\compatctrl.dll
C:\Windows\System32\CompatTel\compatplugin.dll
C:\Windows\System32\CompatTel\compatResources.dll
C:\Windows\System32\CompatTel\cosquery.dll
C:\Windows\System32\CompatTel\DevInv.dll
C:\Windows\System32\CompatTel\drvmain32.sdb
C:\Windows\System32\CompatTel\drvmain64.sdb
C:\Windows\System32\CompatTel\hwcompat32.txt
C:\Windows\System32\CompatTel\hwcompat64.txt
C:\Windows\System32\CompatTel\hwexclude32.txt
C:\Windows\System32\CompatTel\hwexclude64.txt
C:\Windows\System32\CompatTel\QueryAppBlock.exe
C:\Windows\System32\CompatTel\sdbapiu.dll
C:\Windows\System32\CompatTel\setupcompat.dll
C:\Windows\System32\CompatTel\sysmain32.sdb
C:\Windows\System32\CompatTel\sysmain32runtime.sdb
C:\Windows\System32\CompatTel\sysmain64.sdb
C:\Windows\System32\CompatTel\sysmain64runtime.sdb
C:\Windows\System32\CompatTel\wdscore.dll
C:\Windows\System32\CompatTel\wica.dll
C:\Windows\System32\CompatTel\wica.ini
C:\Windows\System32\CompatTel\wicainventory.exe
C:\Windows\System32\CompatTel\CompliancePlugins\DVDPlaybackCompat.dll
C:\Windows\System32\CompatTel\CompliancePlugins\GadgetCompliance.dll
C:\Windows\System32\CompatTel\CompliancePlugins\MediaCenterCompat.dll
C:\Windows\System32\CompatTel\CompliancePlugins\SBCompatPlugin.dll
C:\Windows\System32\CompatTel\CompliancePlugins\TouchCompat.dll
さらに、Microsoft Compatibility Appraiserのスケジュールされたタスクが作成されます。
QueryAppBlock.exe
これは、ユーザーインターフェイスのないコマンドラインユーティリティです。最初にWindows Vista Upgrade Advisorツールに含まれていましたが、Windows 7以降向けに設計された新しいバージョンにバンドルされています。
その目的は、特定のデータベースと比較することにより、新しいWindowsバージョンとの既知の互換性の問題について、ハードウェア、デバイス、およびインストールされているプログラムをスキャンすることです。その後、レポートが作成されます。
互換性インフラストラクチャは、データベースを使用して、アプリケーションの互換性の問題とその解決策を特定します。このデータベースは、.sdb拡張子付きのインデックス付きバイナリファイルです。互換性インフラストラクチャは、データベースにアクセスするためのプログラミングインターフェイスを提供します。
互換性の問題は、実行時にアプリケーションごとに対処できます。データベースで指定された各アプリケーションには、ソリューションを必要とする1つ以上のコンポーネントが含まれています。コンポーネントは、一般的にファイル属性(チェックサムなど)を使用して記述される実行可能ファイルです。
ソース:アプリケーション互換性データベース
パラメータなしで手動で実行すると、プログラムはコマンドの使用法とともに簡単な説明を表示します。
Application, device and bios block detector.
USAGE:
queryappblock.exe /APPS /APPINV ProgramInventoryFile /DEVINV DeviceInven
toryFile /out AppBlockOutputFile /os UpgradeToOSVersion /appSdb SysmainSDBFile [
64BitSysmainSDBFile] /LOG loggingDirectory binDirectory [/REDUCED /runtimeAppSdb
RuntimeSysmainSdbFile [64BitRuntimeSysmainSdbFile]]
[...]
参考文献