Reference: http://msdn.microsoft.com/en-us/library/hh925568(v=vs.110).aspx
วิธีดูเวอร์ชั่นของ .Net Framework ว่ามีกี่เวอร์ชั่นที่ install ลงบนเครื่องของเรา สามารถเขียนโปรแกรมไว้ดูได้ง่ายๆเลยครับ โดยขั้นแรกต้องรู้จัก Registry ของ Microsoft ก่อน ซึ่งสามารถเข้าไปโดยเรียก Run ขึ้นมาแล้วพิมพ์ regedit.exeกด Enter แล้วเข้าไปที่
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP ซึ่งจะเห็นเรียงกันลงมาตามทั้งหมด
คราวนี้ถึงเวลาเขียนโปรแกรมอ่านค่า registry กันมั้ง โดยเราจะอ่านค่าทั้งหมดที่เห็นใน sub folder ของ NDP แล้วเลยเอาตัวที่ขึ้นต้นด้วย V เพื่อมาแสดงลงใน ListView ซึ่งใช้โค๊ดดังนี้
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 | using (RegistryKey ndpKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32).OpenSubKey(@"SOFTWARE\Microsoft\NET Framework Setup\NDP\")) { foreach (string versionKeyName in ndpKey.GetSubKeyNames()) { if (versionKeyName.StartsWith( "v" )) { RegistryKey versionKey = ndpKey.OpenSubKey(versionKeyName); string name = (string)versionKey.GetValue( "Version" , "" ); string sp = versionKey.GetValue( "SP" , "" ).ToString(); string install = versionKey.GetValue( "Install" , "" ).ToString(); if (install == "" ) //no install info, ust be later { ListViewItem item = new ListViewItem( " " + versionKeyName + " " + name, GetImageVersion(versionKeyName)); listView1.Items.Add(item); Console.WriteLine(versionKeyName + " " + name); } else { if (sp != "" && install == "1" ) { ListViewItem item = new ListViewItem( " " + versionKeyName + " " + name + " SP" + sp, GetImageVersion(versionKeyName)); listView1.Items.Add(item); Console.WriteLine(versionKeyName + " " + name + " SP" + sp); } } if (name != "" ) { continue ; } foreach (string subKeyName in versionKey.GetSubKeyNames()) { RegistryKey subKey = versionKey.OpenSubKey(subKeyName); name = (string)subKey.GetValue( "Version" , "" ); if (name != "" ) sp = subKey.GetValue( "SP" , "" ).ToString(); install = subKey.GetValue( "Install" , "" ).ToString(); if (install == "" ) //no install info, ust be later { ListViewItem item = new ListViewItem( " " + versionKeyName + " " + name ,0); listView1.Items.Add(item); Console.WriteLine(versionKeyName + " " + name); } else { if (sp != "" && install == "1" ) { ListViewItem item = new ListViewItem( " " + subKeyName + " " + name + " SP" + sp, -1); listView1.Items.Add(item); Console.WriteLine( " " + subKeyName + " " + name + " SP" + sp); } else if (install == "1" ) { ListViewItem item = new ListViewItem( " " + subKeyName + " " + name , -1); listView1.Items.Add(item); Console.WriteLine( " " + subKeyName + " " + name); } } } } } } < div class = "preloader" >< div ></ div >< div ></ div >< div ></ div >< div ></ div >< div ></ div >< div ></ div >< div ></ div ></ div > |
Name : NetFrameworkWatcher
Version : 1.0
Type : Freeware
Dwonload : ที่นี้
รับเขียนเว็บไซด์ เขียนระบบ .NET PHP ติดต่อ ชิน profrezz@gmail.com
ไม่มีความคิดเห็น:
แสดงความคิดเห็น