我有一个C#应用程序,我需要检测已安装的Windows Media Player版本(我需要知道它是否高于10)。任何人都知道如何解决它?非常感谢!
答案 0 :(得分: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
答案 1 :(得分:0)
查看密钥IsInstalled
下的HKLM\Software\Microsoft\Active Setup\Installed Components\{22d6f312-b0f6-11d0-94ab-0080c74c7e95}
值。安装时为1,否则为0。
答案 2 :(得分:0)
您也可以使用.Net来读取文件版本。例如:
FileVersionInfo wmpInfo = FileVersionInfo.GetVersionInfo(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles), "Windows Media Player", "wmplayer.exe"));
if (wmpInfo.FileMajorPart > 10)
{
//Do something
}