Abfragen von WMI Daten eines Rechners im Netzwerk?

Moin,

wie kann man per Script WMI Daten von einen PC im Netzwerk abfragen?

Auf dem gleichen Rechner wo IPS installiert ist, bekomme ich das zb mit den Daten der Festplatte hin:

<?
    $obj = new COM ( 'winmgmts://localhost/root/CIMV2' );
    $fso = new COM ( "Scripting.FileSystemObject" );
    $LogicalDisk = $obj->ExecQuery("Select * from Win32_LogicalDisk");

    foreach ( $LogicalDisk as $wmi_LogicalDisk )
    {
        $SerialNumberDisk = $wmi_LogicalDisk->VolumeSerialNumber;
        $FileSystem = $wmi_LogicalDisk->FileSystem;
		  $VolumeSize = $wmi_LogicalDisk->Size;
		  echo $SerialNumberDisk." - ".$FileSystem." - ".$VolumeSize."
";
	}
?>

Aber wie funktioniert das mit einen Rechner im Netzwerk, wo gebe ich den den User und das Passwort an?

Auf den Rechner im Netzwerk habe ich alle Freigaben für WMI gesetzt.

Da ich mit der Powershell von den Rechner im Netzwerk den Akkustatus abfragen kann.

$wmi=Get-WmiObject -computername 192.???.??.?? -Class win32_battery 
$wmi.EstimatedChargeRemaining

Wie funktiobniert das Beispiel aber per Script?

MFG
Hein09

Google mal nach Remote PowerShell…

Gesendet von meinem Redmi Note 2 mit Tapatalk

Hallo mastermind1,

vielen Dank für den Hinweis mit „Remote Power Shell“ das habe ich ja auch schon zum laufen gebracht.
(siehe Code Fenster erste Mail)

Ich möchte es gerne ohne Powershell abfragen können, nur mit IPS Script.

Hein09

habe das Problem gelöst.

Und falls es jemand interessiert hier die Lösung:

<?php
    $strComputer = "IP Adresse vom Remote PC";
    $objSWbemLocator = new COM ("WbemScripting.SWbemLocator");
    $objSWbemServices = $objSWbemLocator->ConnectServer($strComputer, "root\cimv2", "DOMAIN\Username", "Passwort");
    $objSWbemServices->Security_->ImpersonationLevel = 3;
    $obj = $objSWbemServices;
    $fso = new COM ( "Scripting.FileSystemObject" );
//ab hier den neuen Befehl für WMI eigeben

    $Battery = $obj->ExecQuery("Select * from Win32_Battery");

    foreach ( $Battery as $wmi_Battery )
    {
    	  $Verfuegbarkeit = $wmi_Battery ->Availability;
    	  $Batteriestatus = $wmi_Battery->BatteryStatus;
        $Spannung = $wmi_Battery->DesignVoltage;
        $BatterieLadezustand = $wmi_Battery->EstimatedChargeRemaining;
        echo $Verfuegbarkeit." - ".$Batteriestatus." - ".$Spannung." - ".$BatterieLadezustand."
";
	}
?>

Hein09