System-Infos von anderem PC im Netzwerk auslesen

  • VB.NET

Es gibt 12 Antworten in diesem Thema. Der letzte Beitrag () ist von EvH.

    System-Infos von anderem PC im Netzwerk auslesen

    Mit folgendem Code möchte ich gerne System-Infos von einem anderen PC auslesen.

    VB.NET-Quellcode

    1. Imports System.Management
    2. Public Class Form1
    3. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    4. Dim Co As New ConnectionOptions
    5. Co.Username = "user"
    6. Co.Password = "password"
    7. Dim sComp As String = "notebook"
    8. Dim Ms As New ManagementScope("\\" & sComp & "\root\cimv2", Co)
    9. Try
    10. Ms.Connect()
    11. MsgBox("Verbindung steht!")
    12. Dim Mc As New ManagementClass("Win32_ComputerSystem")
    13. Dim Mo As ManagementObject
    14. For Each Mo In Mc.GetInstances()
    15. Exit For
    16. Next
    17. Me.ListBox1.Items.Add("Manufacturer: " & CStr(Mo.Properties("Manufacturer").Value))
    18. Me.ListBox1.Items.Add("Modell: " & CStr(Mo.Properties("Model").Value))
    19. Me.ListBox1.Items.Add("Name: " & CStr(Mo.Properties("Name").Value))
    20. Me.ListBox1.Items.Add("Arbeitsspeicher: " & CStr(Mo.Properties("TotalPhysicalMemory").Value))
    21. Catch Ex As ManagementException
    22. MsgBox("WMI-ERROR: " & Ex.Message)
    23. Catch Ex As SystemException
    24. MsgBox("ERROR:" & Ex.Message)
    25. End Try
    26. End Sub
    27. End Class


    Leider kommt die Fehlermeldung, der RPC-Server ist nicht verfügbar. Und teilweise liest er auch die Daten von dem PC aus wo das Skript gestartet wird.
    Also normalerweise sollte es funktionieren. Sind die Clients im Netzwerk in einer Domäne ?
    Gibt es Gruppenrichtlinien ?
    Eventuell musst du dort den Zugriff zusätzlich zur Firewallausnahme zu lassen.
    Computerkonfig -> Admin -> Netzwerk -> Netzwerkverbindung -> Windows-firewall -> domänenprofil /bzw. standardprofil

    Remoteverwaltungsausnahme zulassen -> aktiviert

    Laufen die 3 Dienste?:

    -RPC Locator
    -Remoteprozeduraufruf (RPC)
    -DCOM-Server-Prozessstart

    Versuche am besten erstmal lokal auf dem Notebook ein WMI Script zum auslesen zu testen.
    (Geht auch mit VB Script. Schnipsel für WMI unter VBS findest zu hauf im Inet oder Msdn)
    Das ist meine Signatur und sie wird wunderbar sein!
    Die Clients befinden sich alle in einer Domäne. Zugriffe untereinander wird zugelassen.

    Alle 3 Dienste laufen.

    Ich möcht mir ne Klasse erstellen, die mir alle System-Infos von einem Client ausliest. Diese Klasse soll dann später auch in anderen Netzwerke funktionieren.
    Sorry, für die verspätete Antwort, hatte aber jede Menge zu tun. Hier nun mein Code:
    Dim strClusterName
    On Error Resume Next
    Dim Klasse As String = "MSCluster_Node"
    Dim NamensBereich As String = "Name"
    Dim Searcher As New ManagementObjectSearcher("\\" & strClusterName & "\root\mscluster", "Select * from " & Klasse)
    For Each queryobj As ManagementObject In Searcher.Get()
    If Err.Number = 0 Then
    ....
    Check_Service(queryobj(NamensBereich))
    Check_DiscSpace(queryobj(NamensBereich))
    ....
    Else
    ....
    End If
    Next