1

C# アプリケーションがあり、インストールされている Windows Media Player のバージョンを検出する必要があります (10 より大きいかどうかを知る必要があります)。どうすれば解決できるか考えている人はいますか?どうもありがとう!

4

3 に答える 3

1

詳細を取得するには、C# 経由でレジストリを使用する必要があります。システムにインストールされているすべてのソフトウェアには、 「 SOFTWARE」の下の「HKEY_LOCAL_MACHINE 」にレジストリ エントリがあります。

そのため、内部に移動して、 Microsoftフォルダー内のMediaPlayerを検索します。

そこにはPlayerUpgradeという名前のフォルダーがあり、その中にはメディア プレーヤーのバージョンがインストールされているキーPlayerVersionがあります。

以下はコードです

RegistryKey myKey = Registry.LocalMachine.OpenSubKey("SOFTWARE\\Microsoft\\MediaPlayer\\PlayerUpgrade", false);
string version = (string) myKey.GetValue("PlayerVersion");

「11,0,6002,18111」のような値が得られます。バージョン11を意味します

于 2013-10-04T13:02:22.187 に答える
1

IsInstalledkey の下の値を見てくださいHKLM\Software\Microsoft\Active Setup\Installed Components\{22d6f312-b0f6-11d0-94ab-0080c74c7e95}。インストールされている場合は 1、インストールされていない場合は 0 です。

アプリケーションからの Windows Media Player の検出を参照してください。

于 2013-10-04T12:55:49.317 に答える
0

.Net を使用してファイル バージョンを読み取ることもできます。例:

FileVersionInfo wmpInfo = FileVersionInfo.GetVersionInfo(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles), "Windows Media Player", "wmplayer.exe"));
if (wmpInfo.FileMajorPart > 10)
{
    //Do something
}
于 2013-10-04T13:02:42.180 に答える