Advanced JavaScript with Internet Explorer: Retrieving Networking Configuration Information
This is the second article in a series focusing on retrieving system (or client) information using JavaScript and presenting the same on a web page. You can directly copy and paste all of the code samples present in this article into a file with extension “.htm” and open them in Internet Explorer 5.5+.
Advanced JavaScript with Internet Explorer: Retrieving Networking Configuration Information - How to retrieve only network adapter information using JavaScript (Page 5 of 6 )
Now, let us try to develop a simple script (JavaScript) which shows the technique for retrieving the information for only network adapters. The entire code for the sample is as follows:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title></title> <meta name="GENERATOR" content="Microsoft Visual Studio .NET 7.1"> <meta name="vs_targetSchema" content="http://schemas. microsoft.com/intellisense/ie5"> <script id="clientEventHandlersJS" language="javascript"> <!--
function Button1_onclick() { var locator = new ActiveXObject ("WbemScripting.SWbemLocator"); var service = locator.ConnectServer("."); var properties = service.ExecQuery("SELECT * FROM Win32_NetworkAdapter"); var e = new Enumerator (properties); document.write("<table border=1>"); dispHeading(); for (;!e.atEnd();e.moveNext ()) { var p = e.item (); document.write("<tr>"); document.write("<td>" + p.AdapterType + "</td>"); document.write("<td>" + p.AdapterTypeId + "</td>"); document.write("<td>" + p.DeviceID + "</td>"); document.write("<td>" + p.Index + "</td>"); document.write("<td>" + p.MACAddress + "</td>"); document.write("<td>" + p.Manufacturer + "</td>"); document.write("<td>" + p.MaxSpeed + "</td>"); document.write("<td>" + p.NetConnectionID + "</td>"); document.write("<td>" + p.NetConnectionStatus + "</td>"); document.write("<td>" + p.PNPDeviceID + "</td>"); document.write("<td>" + p.SystemName + "</td>"); document.write("</tr>"); } document.write("</table>"); }
The above would automatically list all network adapters belonging to a computer along with only few of the properties like AdapterType, MAC Address, and so on. To retrieve this information, I used a built-in class, “Win32_NetworkAdapter.” The class internally has a lot of properties, methods and events. But, in the above example we concentrated only on some limited properties related to the “Win32_NetworkAdapter” class.
The “for” loop I used in the above code iterates for every logical/physical network adapter present in the system and finally retrieves only the properties of that adapter.