我有一个 C# 应用程序,我需要检测已安装的 Windows Media Player 版本(我需要知道它是否高于 10)。任何人都知道我该如何解决它?非常感谢!
问问题
1636 次
3 回答
1
查看IsInstalled
key 下的值HKLM\Software\Microsoft\Active Setup\Installed Components\{22d6f312-b0f6-11d0-94ab-0080c74c7e95}
。如果已安装则为 1,否则为 0。
于 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 回答