I'm not very experienced with network stuff and was wondering if you could offer any help with this.
Basically I want to script a program that will allow me to specify either a domain name and machine name, or supply an IP address, username, password and confirm password, that will allow me to look at a machine and pull some information off it. This should include OS, OS version, Service packs, CPU type, CPU clock, memory and HD total & free space. Very much like a simple auditing system.
If you could point me in the direction of things I need to look at in order to do this I would be very grateful.
Thank you for all you help,
Kwun Cheung.
use strict;
use Win32::OLE qw(in);
my $host = 'serverABC';
my $username = 'adminaccount';
my $password = 'secret';
my $WMI = Win32::OLE->new('WbemScripting.SWbemLocator');
my $WMIServices = $WMI->ConnectServer($host, 'root/cimv2', $username, $password)
or die ("Could not connect to $host");
$WMIServices->{Security_}->{ImpersonationLevel} = 3;
my $os_set = $WMIServices->InstancesOf("Win32_OperatingSystem");
my ($os_name, $os_version, $os_sp);
foreach my $os (in($os_set)) {
$os_name = $os->{'Caption'};
$os_version = $os->{'Version'};
$os_sp = $os->{'CSDVersion'};
}
print "OS = $os_name $os_version $os_sp\n";
Documentation for other Win32 WMI classes can be found here:
[http://msdn.microsoft.com/library/en-us/wmisdk/wmi/wmi_classes.asp]
perlmonks.org content © perlmonks.org and amw1, Anonymous Monk, blueAdept, dba, meetraz
prlmnks.org © 2006 edmund von der burg (eccles & toad)
v 0.03