Auslesen von Hardwaredetails mittels WMI

  • VB.NET

SSL ist deaktiviert! Aktivieren Sie SSL für diese Sitzung, um eine sichere Verbindung herzustellen.

    Auslesen von Hardwaredetails mittels WMI

    Hi zusammen,

    ich habe mich vorhin mit diesem Tutorial beschäftigt. Den Code habe ich erstmal (fast) so übernommen und dann begonnen, ihn zu verändern. Das ist meine Weise die Syntax zu verstehen. Klappt bisher auch immer ganz gut.

    Jetzt sitze ich aber vor einem Problem: Ich möchte den Namen der CPU und den des Lüfters (es wird nur 1 geben, da dieser PC steinalt ist) auslesen. Ich habe eine Form mit 4 Labels, 2 davon sollen die Ausgelesenen Daten ausgeben. Tatsächlich ausgegeben wird aber nur der CPU Name.

    Hier der Code dazu:

    VB.NET-Quellcode

    1. Imports System
    2. Imports System.Management
    3. Public Class Form1
    4. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    5. Fan()
    6. CPU()
    7. End Sub
    8. Private Sub Fan()
    9. Dim Fan As String = "Win32_Fan"
    10. Dim FanSpeed As String = "Name"
    11. Dim Fansearcher As New ManagementObjectSearcher("root\CIMV2", "SELECT * FROM " & Fan)
    12. For Each queryObj As ManagementObject In Fansearcher.Get()
    13. Try
    14. lbl_fan_speed.Text = "" & CStr(queryObj(FanSpeed))
    15. Catch
    16. End Try
    17. Next
    18. End Sub
    19. Private Sub CPU()
    20. Dim CPU As String = "Win32_Processor" ' wo soll gesucht werden?
    21. Dim CPUName As String = "Name" 'was suche ich?
    22. Dim Cpusearcher As New ManagementObjectSearcher("root\CIMV2", "SELECT * FROM " & CPU)
    23. For Each queryObj As ManagementObject In Cpusearcher.Get()
    24. Try
    25. lbl_Cpu_name.Text = "" & CStr(queryObj(CPUName))
    26. Catch
    27. End Try
    28. Next
    29. End Sub
    30. End Class


    Das Label für den Lüfter (lbl_fan_name) gibt mir ganz konsequent nichts aus... Wieso? ?(

    EDIT: Hab grad mal Die KeyboardID anstelle des Fan Names auslesen lassen, da kam was bei raus ... :?:
    Es dauerte viele Millionen Jahre, bis wir den aufrechten Gang erlernt hatten. Ich werde jetzt garantiert nicht mit gesenktem Kopf laufen.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Ryke“ ()

    Beim Auslesen mit SpeedFan bekomme ich legitime Temperaturwerte (GPU: 58°C, CPU0: 37°C, CPU1: 40°C), aber daneben steht "Fan1: -109 RPM" Auslese Fehler oder Ausgabe doof Formatiert? Abgesehen davon zeigt er mir 5 Lüfter an, wo auch immer die alle sein sollen... Ich glaube, dass der Chip Murks ausgibt.
    Aber Danke für den Tipp! :)
    Es dauerte viele Millionen Jahre, bis wir den aufrechten Gang erlernt hatten. Ich werde jetzt garantiert nicht mit gesenktem Kopf laufen.
    Ich kann mir nicht vorstellen, dass der Lüfter ausgelesen wird :D, weil eigentlich sind da nur 2 Kabel für Strom und 1 + GNd des stroms als Encoder Signal -> aber den Name gibts dir hier nicht aus. Der Encoder ist einfach nur nen HI Lo Signal, was dir die Geschwindigkeit anzeigt und dann per Temperatursensor den Lüfter eben nachregelt.