All pastes #270283 Raw Edit

dddd

public text v1 · immutable
·published 2006-12-07 06:40 UTC
rendered paste body
use Win32::OLE qw (in);
$strComputer = ".";

#connect to WMI
  my $WMIProcesses = Win32::OLE->GetObject("winmgmts://$strComputer") || die; 



    print "****************** Computer Info *************************\n";

  my $ComputerSystemCollection = $WMIProcesses->InstancesOf("Win32_ComputerSystem" ); 


if (Win32::OLE->LastError() != 0) {
    print Win32::OLE->LastError()."\n";
  }

  foreach $ComputerSystemz (in $ComputerSystemCollection) {
    print $ComputerSystemz->{Name}."  ";
    print $ComputerSystemz->{UserName}."\n";
    print $ComputerSystemz->{Manufacturer}."  :  ";
    print $ComputerSystemz->{Model}." : ";
    print $ComputerSystemz->{Description}."\n";
  }
    print "_________________________________________________________\n\n";
    print "\n\n\n";





    print "******************** Start Up Commands ******************\n\n";

  my $StartupCommandCollection = $WMIProcesses->InstancesOf("Win32_StartupCommand" ); 


if (Win32::OLE->LastError() != 0) {
    print Win32::OLE->LastError()."\n";
  }

  foreach $StartupCommandz (in $StartupCommandCollection) {
    print $StartupCommandz->{Name}."  ";
    print $StartupCommandz->{Command}."\n";

    print $StartupCommandz->{User}." : ";
    print $StartupCommandz->{UserSID}." : ";
    print $StartupCommandz->{Location}."\n";
    print "                     ----\n";
  }

    print "_________________________________________________________\n\n";
    print "\n\n\n";






    print "********************* List Processes ********************\n\n";



  my $ProcessCollection = $WMIProcesses->InstancesOf("Win32_PRocess" ); 


if (Win32::OLE->LastError() != 0) {
    print Win32::OLE->LastError()."\n";
  }

  foreach $Processz (in $ProcessCollection) {
    print $Processz->{ProcessID}." : ";
    print $Processz->{Name}." : ";
    print $Processz->{ExecutablePath}."\n";
  }

    print "_________________________________________________________\n\n";
    print "\n\n\n";
    print "********************* List Services  ********************\n\n";


  my $ServiceCollection = $WMIProcesses->InstancesOf("win32_service" ); 


if (Win32::OLE->LastError() != 0) {
    print Win32::OLE->LastError()."\n";
  }

  foreach $drive (in $ServiceCollection) {
    print $drive->{PathName}."\n";
  }

    print "_________________________________________________________\n\n";


    print "\n\n\n";
    print "****************** All Windows Patches  ******************\n\n";

  my $QuickFixEngineeringCollection = $WMIProcesses->InstancesOf("Win32_QuickFixEngineering" ); 


if (Win32::OLE->LastError() != 0) {
    print Win32::OLE->LastError()."\n";
  }

  foreach $QuickFixEngineeringz (in $QuickFixEngineeringCollection) {
    print $QuickFixEngineeringz->{HotFixID}."  ";
    print $QuickFixEngineeringz->{Description}."  ";
    print $QuickFixEngineeringz->{InstalledBy}."  ";
    print $QuickFixEngineeringz->{InstallDate}."\n";
  }

    print "_________________________________________________________\n\n";
    print "\n\n\n";