实现方法:注册表读取。
代码如下,比较简单,不做详细说明。
private void SlCheck()
{
object displayName = null, displayVersion = null;
RegistryKey currentKey = null;
RegistryKey pregkey = Registry.LocalMachine.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Uninstall");//获取指定路径下的键
try
{
foreach (string item in pregkey.GetSubKeyNames()) //循环所有子键
{
currentKey = pregkey.OpenSubKey(item);
displayName = currentKey.GetValue("DisplayName"); //获取显示名称
displayVersion = currentKey.GetValue("DisplayVersion"); //获取卸载字符串路径
if (displayName != null)
{
if (String.Compare(displayName.ToString(), "Microsoft Silverlight") == 0)
{
this.label6.Text = displayName.ToString() + " " + displayVersion.ToString();
if (displayVersion.ToString().Substring(0, 1) == "5")
{ this.checkBox4.Checked = true; checkBox4.Text = "正确"; }
else this.checkBox4.Text = "版本过旧";
}
}
}
}
catch (Exception E)
{
MessageBox.Show(E.Message.ToString());
}
}