使用されているすべてのプログラムの概要と、使用されているこのソフトウェアのバージョン数を知りたいです。正確なバージョン番号を知る必要はありませんが (あればいいのですが)、2 つのものが異なるバージョン (またはビルド) であると言えればよいだけです。
私は各プログラムについて何も知らないので、これを一般的な方法で行う必要があります。これはどのように行うことができますか?
使用されているすべてのプログラムの概要と、使用されているこのソフトウェアのバージョン数を知りたいです。正確なバージョン番号を知る必要はありませんが (あればいいのですが)、2 つのものが異なるバージョン (またはビルド) であると言えればよいだけです。
私は各プログラムについて何も知らないので、これを一般的な方法で行う必要があります。これはどのように行うことができますか?
これはかなり一般的な質問なので、一般的な回答をします。次のことを行う必要があります。
EnumProcesses()
。OpenProcess()
に、プロセス ハンドルを取得します。GetModuleFileNameEx()
て、プロセスのメイン実行可能ファイル名を取得します。GetFileVersionInfo()
、おそらくその友達の何人かを呼び出して、情報を取得します。これにより、マーケティング バージョンではなくバイナリ バージョン情報が提供されます。たとえば、Windows XP はバージョン 5.1、Windows Vista は 6.0、Windows 7 はバージョン 6.1 です。マーケティング バージョンが必要な場合、それはおそらく一般的な方法では達成できません。