use strict;
use Win32::OLE('in');
use constant wbemFlagReturnImmediately => 0x10;
use constant wbemFlagForwardOnly => 0x20;
my @computers = ("MYPC");
foreach my $computer (@computers) {
print "\n";
print "==========================================\n";
print "Computer: $computer\n";
print "==========================================\n";
my $objWMIService = Win32::OLE->GetObject("winmgmts:\\\\$computer\\
+root\\CIMV2") or die "WMI connection failed.\n";
my $colItems = $objWMIService->ExecQuery("SELECT * FROM Win32_Displ
+ayConfiguration", "WQL",
wbemFlagReturnImmediately | wbemFlagForwardOnly);
foreach my $objItem (in $colItems) {
print "BitsPerPel: $objItem->{BitsPerPel}\n";
print "Caption: $objItem->{Caption}\n";
print "Description: $objItem->{Description}\n";
print "DeviceName: $objItem->{DeviceName}\n";
print "DisplayFlags: $objItem->{DisplayFlags}\n";
print "DisplayFrequency: $objItem->{DisplayFrequency}\n";
print "DitherType: $objItem->{DitherType}\n";
print "DriverVersion: $objItem->{DriverVersion}\n";
print "ICMIntent: $objItem->{ICMIntent}\n";
print "ICMMethod: $objItem->{ICMMethod}\n";
print "LogPixels: $objItem->{LogPixels}\n";
print "PelsHeight: $objItem->{PelsHeight}\n";
print "PelsWidth: $objItem->{PelsWidth}\n";
print "SettingID: $objItem->{SettingID}\n";
print "SpecificationVersion: $objItem->{SpecificationVersion}\n"
+;
print "\n";
}
}
I'm assuming (hopefully not wrongly) that you can set these properties as well as getting them.
--
John.
|