1 ///2 ///detecting netframework versions of computers that have been installed3 ///4 Internal voidgetversionfromregistry ()5 {6 using(RegistryKey Ndpkey =Registrykey.openbasekey (Registryhive.localmachine,7REGISTRYVIEW.REGISTRY32). OpenSubKey (@"software\microsoft\net Framework setup\ndp\"))8 {9 foreach(stringVersionkeynameinchndpkey.getsubkeynames ())Ten { One if(Versionkeyname.startswith ("v")) A { -RegistryKey Versionkey =Ndpkey.opensubkey (versionkeyname); - stringName = (string) Versionkey.getvalue ("Version",""); the stringSP = Versionkey.getvalue ("SP",""). ToString (); - stringInstall = Versionkey.getvalue ("Install",""). ToString (); - if(Install = ="")//no install info, ust be later -Console.WriteLine (Versionkeyname +" "+name); + Else - { + if(sp! =""&& Install = ="1") A { atConsole.WriteLine (Versionkeyname +" "+ name +"SP"+sp); - } - } - if(Name! ="") - { - Continue; in } - foreach(stringSubkeyNameinchversionkey.getsubkeynames ()) to { +RegistryKey subkey =Versionkey.opensubkey (subkeyname); -Name = (string) Subkey.getvalue ("Version",""); the if(Name! ="") *SP = Subkey.getvalue ("SP",""). ToString (); $Install = Subkey.getvalue ("Install",""). ToString ();Panax Notoginseng if(Install = ="")//no install info, ust be later -Console.WriteLine (Versionkeyname +" "+name); the Else + { A if(sp! =""&& Install = ="1") the { +Console.WriteLine (" "+ SubkeyName +" "+ name +"SP"+sp); - } $ Else if(Install = ="1") $ { -Console.WriteLine (" "+ SubkeyName +" "+name); - } the } - }Wuyi } the } - } Wu}
Detecting the NETFramework version (excerpt) that the computer has installed