Stefan: Mainboardbezeichnung Online Auslesen

Salü miteinander!

habe ein kleines Problem.
Ich Suche eine Möglichkeit wie über ActiveX / Java oder ähnliches die Bezeichnung des Mainboards und der Hersteller ausgelesen werden kann.

Beispiel:
Ich gehe auf eine webseite, und die Zeigt mir dann an sie haben ein Asus A7V8X.
(Verschiedene "grosse" Hersteller - z.B. Fujitsu-Siemens haben sowas teilweise auf den Treiberdownloadseiten realisiert)

Es ist egal ob dazu ein ActiveX, Java oder sonstwas ausgeführt werden muss, aber eben nur kein Extra Programm.
Einzige Vorraussetzung: Variable muss an PHP übergeben werden können, was aber eigentlich kein Problem sein dürfte.

Es geht um eine interne Lösung, sicherheit von ActiveX etc soll hier nicht gegenstand der Diskussion sein.

Vielen Dank!

Stefan

  1. Hallo Stefan,

    Ich Suche eine Möglichkeit wie über ActiveX / Java oder ähnliches die Bezeichnung des Mainboards und der Hersteller ausgelesen werden kann.

    mit WMI ist das prinzipiell möglich, ich habe meine Testseite deswegen um dieses Feature erweitert.

    Bitte beachte: VB-Script, daher nur IE
    Du musst verdammt viel erlauben :-)

    public Function getBoardName()
        Dim sysinfo, strComputername, colItems, objItem
        Const wbemFlagReturnImmediately = &h10
        Const wbemFlagForwardOnly = &h20

    On Error Resume Next

    ' Uns interessiert nur der Name des Rechners, auf dem das Skript läuft
        ' Prinzipiell könntest Du hier eine Liste der NetBIOS-Namen aller
        ' Deiner Windows-Maschinen im lokalen Netzwerk abarbeiten
        strComputername = "."
        Set sysinfo = GetObject("winmgmts:\" & strComputername & "\root\cimv2")
        ' Auf Fehlschlag des Aufrufs prüfen:
        If Err.Number > 0 then
            ' Fehler aufgetreten: Fehlercode und -beschreibung zurückgeben
            getBoardName = "Fehler: " & Err.Number & ": " & Err.Description
            Exit Function
        End If

    Set colItems = sysinfo.ExecQuery("SELECT * FROM Win32_BaseBoard", "WQL", _
            wbemFlagReturnImmediately + wbemFlagForwardOnly)
        For Each objItem in colItems
            ' Natürlich erwarten wir nur ein Mainboard :-)
            If Len(getBoardName) > 0 Then
                getBoardName = getBoardName & chr(10) & chr(13)
            End If
            getBoardName = getBoardName & _
                "Hersteller: " & objItem.Manufacturer & chr(10) & chr(13) & _
                "Bezeichnung: " & objItem.Product
        Next
    End Function

    Ich gehe auf eine webseite, und die Zeigt mir dann an sie haben ein Asus A7V8X.

    Für WMI-Scripting kann ich Dir Scriptomatic 2.0 empfehlen; einen Artikel zu diesem Werkzeug gab es in der c't-Ausgabe 24/2006.

    Freundliche Grüße

    Vinzenz

    1. Hallo Vinzenz!

      sieht genau nach sowas aus wie ich suche....
      Leider bekomm ich das script online gar nicht zum laufen, offline bekomm ich nur Benutzer, PC name und ID, bei IP und Board kommt "Fehler (429): Konnte WMI-Objekt nicht erstellen!"
      Muss ich noch irgendwas runterlade?
      Hab allerdings grad nur Iexplorer 7 zur hand... oder war ich blind und hab nur wieder igrendeinen button in den Interneteinstellungen überesehen...?

      Supervielen Dank noch für die schnelle antwort, auch wenn ichs heut erst gelesen hab!

      Stefan

      1. Hallo Stefan,

        Leider bekomm ich das script online gar nicht zum laufen, offline bekomm ich nur Benutzer, PC name und ID, bei IP und Board kommt "Fehler (429): Konnte WMI-Objekt nicht erstellen!"
        Muss ich noch irgendwas runterlade?

        Nein, eine Einstellung auf einen  _sehr unsicheren_ Wert stellen.

        Hab allerdings grad nur Iexplorer 7 zur hand... oder war ich blind und hab nur wieder igrendeinen button in den Interneteinstellungen überesehen...?

        Nach meinen Tests ist folgendes erforderlich:

        1. Site in die Liste der vertrauenswürdigen Sites aufnehmen
        2. Einstellung "ActiveX-Steuerelemente initialisieren und ausführen,
           die nicht als "sicher für Skripting" markiert sind
             [x] Aktivieren
             [ ] Bestätigen   - reicht nicht aus, es erfolgt auch keine Nachfrage :-(
             [ ] Deaktivieren - reicht erst recht nicht :-)

        Das hat bei den von mir getesteten IEs funktioniert. Das sollte ich auf meiner Testseite ergänzen. Bei der hier erwähnten Einstellung genügt es auch, die Zone ansonsten auf "Mittel" stehen zu lassen. Es ist die gefährlichste Einstellung die ich mir vorstellen kann. Mit VB-Script kannst Du schließlich alles das tun, was der angemeldete Benutzer am Rechner tun kann.

        Freundliche Grüße

        Vinzenz