|
dev
newsgroups
|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
Getting MAC AddressMAC Address of the PC is 8th and 9th in the list (following the code). How do I get just the MAC Address I need? Why are there so many entries? Dim objManagementClass As New ManagementClass(New ManagementPath("Win32_NetworkAdapter")) Dim colManagementObjects As ManagementObjectCollection = objManagementClass.GetInstances For Each objMO As ManagementObject In colManagementObjects Me.lstGeneric.Items.Add(IIf(IsNothing(objMO("MACAddress")), "Nothing", objMO("MACAddress"))) Next Output from the code is: Nothing 20:41:53:59:4E:FF Nothing 50:50:54:50:30:30 33:50:6F:45:30:30 Nothing Nothing 00:0D:61:26:94:C8 00:0D:61:26:94:C8 62:FF:20:52:41:53 Nothing Thanks, Michael using System;
using System.Collections; using System.Data; using System.Diagnostics; using System.IO; namespace GetMac { /// <summary> /// Summary description for clsGetMac. /// </summary> public class clsGetMac { public clsGetMac() { // // TODO: Add constructor logic here // } public static string GetMac(string IP) { string str1=String.Empty; try { string str2=String.Empty; ProcessStartInfo info1 = new ProcessStartInfo(); Process process1 = new Process(); info1.FileName = "nbtstat"; info1.RedirectStandardInput = false; info1.RedirectStandardOutput = true; info1.Arguments = "-A " + IP; info1.UseShellExecute = false; info1.CreateNoWindow=true; process1 = Process.Start(info1); int num1 = -1; while (num1 <= -1) { num1 = str2.Trim().ToLower().IndexOf("mac address", 0); if (num1 > -1) { break; } str2 = process1.StandardOutput.ReadLine(); } process1.WaitForExit(); str1 = str2.Trim(); } catch (Exception exception2) { throw exception2; } return str1; } } } I suggest you look at some of the other attributes to filter out what you
want, such as AdappterType. You're seeing all the network providers available. What you want is something like a NetConnectionID value of "Local Area Cionnection". -- Phil Wilson [Microsoft MVP-Windows Installer] "Michael Jackson" <michaeldjack***@cox.net> wrote in message news:FlV2f.9345$417.1763@okepread02...Show quote > I'm using the following code to get the MAC Address from the PC. The > actual MAC Address of the PC is 8th and 9th in the list (following the > code). How do I get just the MAC Address I need? Why are there so many > entries? > > > Dim objManagementClass As New ManagementClass(New > ManagementPath("Win32_NetworkAdapter")) > > Dim colManagementObjects As ManagementObjectCollection = > objManagementClass.GetInstances > > For Each objMO As ManagementObject In colManagementObjects > > Me.lstGeneric.Items.Add(IIf(IsNothing(objMO("MACAddress")), "Nothing", > objMO("MACAddress"))) > > Next > > Output from the code is: > > Nothing > 20:41:53:59:4E:FF > Nothing > 50:50:54:50:30:30 > 33:50:6F:45:30:30 > Nothing > Nothing > 00:0D:61:26:94:C8 > 00:0D:61:26:94:C8 > 62:FF:20:52:41:53 > Nothing > > Thanks, > Michael > Thanks for you help. I acutally used IPEnabled to filter. Seems to work.
Michael Show quote "Phil Wilson" <pdjwilson@nospam.cox.net> wrote in message news:edEzaK0zFHA.1252@TK2MSFTNGP09.phx.gbl... >I suggest you look at some of the other attributes to filter out what you >want, such as AdappterType. You're seeing all the network providers >available. What you want is something like a NetConnectionID value of >"Local Area Cionnection". > -- > Phil Wilson > [Microsoft MVP-Windows Installer] > > "Michael Jackson" <michaeldjack***@cox.net> wrote in message > news:FlV2f.9345$417.1763@okepread02... >> I'm using the following code to get the MAC Address from the PC. The >> actual MAC Address of the PC is 8th and 9th in the list (following the >> code). How do I get just the MAC Address I need? Why are there so many >> entries? >> >> >> Dim objManagementClass As New ManagementClass(New >> ManagementPath("Win32_NetworkAdapter")) >> >> Dim colManagementObjects As ManagementObjectCollection = >> objManagementClass.GetInstances >> >> For Each objMO As ManagementObject In colManagementObjects >> >> Me.lstGeneric.Items.Add(IIf(IsNothing(objMO("MACAddress")), "Nothing", >> objMO("MACAddress"))) >> >> Next >> >> Output from the code is: >> >> Nothing >> 20:41:53:59:4E:FF >> Nothing >> 50:50:54:50:30:30 >> 33:50:6F:45:30:30 >> Nothing >> Nothing >> 00:0D:61:26:94:C8 >> 00:0D:61:26:94:C8 >> 62:FF:20:52:41:53 >> Nothing >> >> Thanks, >> Michael >> > > |
|||||||||||||||||||||||