<job id="EjemploPerlAndVBS">
<script language="PerlScript">
sub EjemploPerl {
my $computer = @_[0];
$WScript->Echo("---------------Comienzo del Script Perl---------------------");
$WScript->Echo("Show Information for $computer");
use Win32::OLE(\'in\');
use constant wbemFlagReturnImmediately => 0x10;
use constant wbemFlagForwardOnly => 0x20;
my $objWMIService = Win32::OLE->GetObject("winmgmts:\\\\\\\\$computer\\\\root\\\\CIMV2") or die "WMI
connection failed.\\n";
#Consulta WMI a la clase Win32_ComputerSystem
my $colItems = $objWMIService->ExecQuery("SELECT * FROM Win32_ComputerSystem", "WQL",
wbemFlagReturnImmediately | wbemFlagForwardOnly);
foreach my $objItem (in $colItems) {
$WScript->Echo("AdminPasswordStatus: $objItem->{AdminPasswordStatus}");
$WScript->Echo("DNSHostName: $objItem->{DNSHostName}");
$WScript->Echo("Name: $objItem->{Name}");
$WScript->Echo("UserName: $objItem->{UserName}");
}
}
</script>
<script language="VBScript">
Option Explicit
Dim objWMIService, objItem, colItems
Dim strComputer, strList
On Error Resume Next
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\\\" _
& strComputer & "\\root\\cimv2")
\' Consulta WMI a la clase Win32_ComputerSystem
Set colItems = objWMIService.ExecQuery _
("Select * from Win32_ComputerSystem")
WScript.Echo "----------------Comienzo del Script VBScript---------------------"
WScript.Echo "Show Information for localhost"
For Each objItem in colItems
WScript.Echo "AdminPasswordstatus: "&objItem.AdminPasswordStatus
WScript.Echo "DNSHostName: "&objItem.DNSHostName
WScript.Echo "Name: "&objItem.Name
WScript.Echo "UserName: "&objItem.UserName
Next
\' Llamada a Perl desde VBScript
EjemploPerl "localhost"
WSCript.Quit
</script>
</job>