Advanced JavaScript with Internet Explorer: Working with Drives and More
This series mainly concentrates on retrieving system information using JavaScript and displaying the same on a web page. All of the examples in this series can be directly tested by copying and pasting the entire code (of each section) in any text file with the extension .HTM and opening it using Microsoft Internet Explorer (preferably 5.5+).
Advanced JavaScript with Internet Explorer: Working with Drives and More - How to learn more information about each partition using JavaScript (Page 4 of 6 )
Now, let us try to develop a simple script (JavaScript) which shows a technique for retrieving more information about each partition. 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_DiskPartition"); var e = new Enumerator (properties); document.write("<table border=1>"); for (;!e.atEnd();e.moveNext ()) { var p = e.item (); document.write("<tr>"); document.write("<td>" + p.DeviceID + "</td>"); document.write("<td>" + p.BootPartition + "</td>"); document.write("<td>" + p.Bootable + "</td>"); document.write("</tr>"); } document.write("</table>"); } //--> </script> </head> <body> <INPUT id="Button1" type="button" value="Button" name="Button1" language=javascript onclick="return Button1_onclick()"> </body> </html>
The above code would automatically list all the physical partitions along with their ids and other information. To retrieve physical partition information, I used a built-in class, “Win32_DiskPartition.” The class internally has a lot of properties, methods and events. But, in the above example we concentrated only on the properties “DeviceID,” “BootPartition” and “Bootable” (related to “Win32_DiskPartition” class).
The “for” loop I used in the above code iterates for every physical partition present in the system and finally retrieves only the properties of that partition.