views:

29

answers:

1

I am writing a perl script that will list the hotfixes installed in my system and check if any pre-requisite hotfixes are not available before beginning my program;

So I need to be able to enumerate the list of hotfixes in the system; Here there is a mention of using wmic to generate a html file. Is it possible to do this via a WMI query?

+2  A: 

I have figured out the answer for this myself!! There is a vbscript option provided here.

The perl version goes like this..

use Win32::OLE qw( in );
my $machine = ".";
my $WMIServices = Win32::OLE->GetObject ( "winmgmts:{impersonationLevel=impersonate,(security)}//$machine/root/cimv2" ) || die "cant call getobject";
my $HotFixCollection = $WMIServices->ExecQuery ( "select * from Win32_QuickFixEngineering" ) || die "Query Failed";

foreach my $hotfix ( in( $HotFixCollection )){
 $hotfixID = $hotfix->{HotFixID};
 print "Hotfix id is $hotfixID \n";
}
Santhosh