Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Does there exist a way by which i can use WMI classes in java

Hi i want to use WMI classes to find out the application and products information. But the problem is that i want to use java or any scripting language like python, javascript or perl. I have heard about JWMI, it may be an option. Can anyone help me regarding this???

like image 798
amod Avatar asked Jun 09 '11 05:06

amod


1 Answers

JavaScript and Java aren't the same thing.

JavaScript

JavaScript is available under Windows Scripting Host (WSH). With it, it is fairly easy to access WMI:

var loc = new ActiveXObject("WbemScripting.SWbemLocator");
var svc = loc.ConnectServer(".", "root\\cimv2");
coll = svc.ExecQuery("select * from Win32_Process");
var items = new Enumerator(coll);

while ( !items.atEnd() )
{
    WScript.Echo(items.item().Name);
    items.moveNext();
}

jWMI (Java)

jWMI is a small library to enable Java to make general WMI queries. It seems to be available here

http://henryranch.net/software/jwmi-query-windows-wmi-from-java/

It also seems easy to use (though I am not sure how powerful or complete it is):

String name = getWMIValue("Select Name from Win32_ComputerSystem", "Name");

WBEM (Java)

WMI is a Microsoft implementation of Web Based Enterprise Management (WBEM). There is also a Java implementation of general WBEM which will be at some level compatible with WMI.

This might be the most complete true Java implementation you're going to find. If your needs are above tiny scripting (such as implementing a WBEM/WMI provider), then you might want to look into this option.

like image 105
Merlyn Morgan-Graham Avatar answered Oct 22 '22 12:10

Merlyn Morgan-Graham