1

我有一个 C# 应用程序,我需要检测已安装的 Windows Media Player 版本(我需要知道它是否高于 10)。任何人都知道我该如何解决它?非常感谢!

4

3 回答 3

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 回答
1

您必须通过 c# 使用注册表来获取详细信息系统上安装的每个软件在“软件”下的“ 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 回答
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 回答