pc informationen gesucht (mainboard ermitteln , prozessor .......

  • hi ich suche eine udf um ein mainboard , den prozessor ,das bit betriebssystem , die mac adresse zu ermitteln wenn ihr eine funtkion kennt bescheid sagen

  • Das beantwortet zwar nicht deine Frage, aber ich finde es i-wie passend ;)
    Es zeigt dir so ziemlich alles über dein System und Hardware an.

    Spoiler anzeigen
    [autoit]

    #include<EditConstants.au3>
    #NoTrayIcon
    #RequireAdmin
    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_Compression=4
    #AutoIt3Wrapper_Res_Description=Computer-Info
    #AutoIt3Wrapper_Res_Fileversion=1.8.0.0
    #AutoIt3Wrapper_Res_LegalCopyright=by Oscar (http://www.autoit.de)
    #AutoIt3Wrapper_Res_Language=1031
    #AutoIt3Wrapper_res_requestedExecutionLevel=requireAdministrator
    #AutoIt3Wrapper_Run_Obfuscator=y
    #Obfuscator_Parameters=/striponly
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****

    [/autoit] [autoit][/autoit] [autoit]

    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <String.au3>
    #include <Date.au3>
    #include <Inet.au3>
    #include <String.au3>
    #include <Misc.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Opt('GUIOnEventMode', 1)

    [/autoit] [autoit][/autoit] [autoit]

    Global $Title = 'Computer-Info v1.8 (c) by Oscar (http://www.autoit.de)'

    [/autoit] [autoit][/autoit] [autoit]

    Global $s_MailTo = 'you@yourprovider.de' ; E-Mail-Adresse, an die der Bericht geschickt wird. (anpassen!)

    [/autoit] [autoit][/autoit] [autoit]

    Global $s_MailSubject = 'Computer-Info von ' & @UserName ; Das wird als Betreff verwendet. (evtl. anpassen!)

    [/autoit] [autoit][/autoit] [autoit]

    If (@AutoItVersion < '3.2.12.0') And (Not @Compiled) Then
    Global $Msg = 'Dieses Script benötigt min. die AutoIt-Version: 3.2.12.0 ' & @CRLF & @CRLF
    $Msg &= 'Gestartet wurde es mit AutoIt-Version: ' & @AutoItVersion
    Exit MsgBox(48, $Title, $Msg)
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    Global $ret
    $ret = DllCall('kernel32.dll', 'int', 'GetLocaleInfo', 'dword', '0x' & @OSLang, 'dword', BitOR(0x2, 0x80000000), 'str', '', 'int', 85)
    Global $OSLang = $ret[3]
    $ret = DllCall('kernel32.dll', 'int', 'GetLocaleInfo', 'dword', '0x' & @KBLayout, 'dword', BitOR(0x2, 0x80000000), 'str', '', 'int', 85)
    Global $KBLayout = $ret[3]
    Global $Bin = RegRead('HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion', 'DigitalProductID')

    [/autoit] [autoit][/autoit] [autoit]

    Global $Gui = GUICreate($Title, 600, 480, Default, 5, BitOR($WS_MAXIMIZEBOX, $WS_SIZEBOX))
    GUISetOnEvent($GUI_EVENT_CLOSE, '_End')
    Global $Edit = GUICtrlCreateEdit(@CRLF & ' Bitte warten...', 5, 5, 585, 400, BitOR($ES_READONLY, $WS_HSCROLL, $WS_VSCROLL))
    GUICtrlSetResizing(-1, $GUI_DOCKBORDERS)
    GUICtrlSetBkColor(-1, 0xffffff)
    Global $Send = GUICtrlCreateButton('Bericht senden...', 5, 420, 140, 25)
    GUICtrlSetResizing(-1, $GUI_DOCKBOTTOM + $GUI_DOCKSIZE)
    GUICtrlSetState(-1, $GUI_DISABLE)
    GUICtrlSetOnEvent(-1, '_Send')
    Global $End = GUICtrlCreateButton('Beenden', 510, 420, 80, 25)
    GUICtrlSetResizing(-1, $GUI_DOCKBOTTOM + $GUI_DOCKSIZE)
    GUICtrlSetState(-1, $GUI_FOCUS)
    GUICtrlSetState(-1, $GUI_DISABLE)
    GUICtrlSetOnEvent(-1, '_End')
    WinMove($Title, '', Default, Default, 600, @DesktopHeight - 80)

    [/autoit] [autoit][/autoit] [autoit]

    GUISetState()

    [/autoit] [autoit][/autoit] [autoit]

    Global $colItems = '', $Output = '', $objItem
    $Output &= $Title & @CRLF & @CRLF
    $Output &= 'Heutiges Datum: ' & @TAB & _NowDate() & ' ' & _NowTime() & @CRLF & @CRLF
    $Output &= @CRLF & 'Betriebssystem' & @CRLF
    $Output &= '==============================================================' & @CRLF
    Global $objWMIService = ObjGet('winmgmts:\\localhost\root\CIMV2')

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetData($Edit, ' Bitte warten...' & @CRLF & @CRLF & ' Win32_Desktop')
    $colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_Desktop', 'WQL', 0x30)
    If IsObj($colItems) Then
    For $objItem In $colItems
    If StringInStr($objItem.Name, @UserName) Then
    $Wallpaper = 'Hintergrundbild: ' & @TAB & _Iif($objItem.Wallpaper <> '', $objItem.Wallpaper, 'Nicht vorhanden') & @CRLF
    $ScreenSaver = 'Bildschirmschoner: ' & @TAB & _Iif($objItem.ScreenSaverExecutable <> '', $objItem.ScreenSaverExecutable, 'Nicht vorhanden') & @CRLF & @CRLF
    EndIf
    Next
    Else
    $Output &= 'No WMI Objects Found for class: Win32_Desktop' & @CRLF & @CRLF
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetData($Edit, ' Bitte warten...' & @CRLF & @CRLF & ' nslookup')
    RunWait(@ComSpec & " /c " & "nslookup localhost >" & Chr(34) & @TempDir & "\cominfo.txt" & Chr(34), "", @SW_HIDE)
    $DNSServer = StringReplace(FileReadLine(@TempDir & "\cominfo.txt", 1), 'Server: ', 'DNS-Server:' & @TAB)
    $IPAdress = StringReplace(FileReadLine(@TempDir & "\cominfo.txt", 2), 'Address: ', ' (IP: ')
    $DNSServer &= $IPAdress & ')'
    FileDelete(@TempDir & "\cominfo.txt")

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetData($Edit, ' Bitte warten...' & @CRLF & @CRLF & ' Win32_ComputerSystem')
    $colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_ComputerSystem', 'WQL', 0x30)
    If IsObj($colItems) Then
    For $objItem In $colItems
    $System = 'Computer: ' & @TAB & $objItem.SystemType & @CRLF
    $Domain = 'Arbeitsgruppe: ' & @TAB & $objItem.Domain & @CRLF
    $StartOpt = 'Start-Optionen:' & @TAB & $objItem.SystemStartupOptions(0) & @CRLF
    Next
    Else
    $Output &= 'No WMI Objects Found for class: Win32_ComputerSystem'
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetData($Edit, ' Bitte warten...' & @CRLF & @CRLF & ' Win32_OperatingSystem')
    $colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_OperatingSystem', 'WQL', 0x30)
    If IsObj($colItems) Then
    For $objItem In $colItems
    $Output &= $objItem.Caption & ' ('
    $Output &= $objItem.CreationClassName & ')' & @CRLF
    $Output &= 'inkl. ' & $objItem.CSDVersion & ' ('
    $Output &= 'Version: ' & $objItem.Version & ')' & @CRLF & @CRLF
    $Output &= 'Sprachversion: ' & @TAB & $OSLang & @CRLF
    $Output &= 'Reg. Benutzer: ' & @TAB & $objItem.RegisteredUser & @CRLF
    $Output &= 'Produktkey: ' & @TAB & _DecodeProductKey($Bin) & @CRLF & @CRLF ; Funktion _DecodeProductKey() von Xenobiologist (http://www.autoit.de)
    $Output &= 'Windows-Ordner: ' & @TAB & $objItem.WindowsDirectory & @CRLF
    $Output &= $StartOpt
    $Output &= 'Installationsdatum:' & @TAB & _WMIDateStringToDate($objItem.InstallDate) & @CRLF
    $Output &= 'Zuletzt gestartet: ' & @TAB & _WMIDateStringToDate($objItem.LastBootUpTime) & @CRLF & @CRLF
    $Output &= $Wallpaper
    $Output &= $ScreenSaver
    $Output &= $System
    $Output &= 'Computersystem: ' & @TAB & $objItem.CSCreationClassName & @CRLF
    $aMemory = MemGetStats()
    $Output &= 'Hauptspeicher ' & @CRLF
    $Output &= @TAB & '(Gesamt):' & @TAB & _DisplayMemorySize($aMemory[1]) & @CRLF
    $Output &= @TAB & '(Frei):' & @TAB & _DisplayMemorySize($aMemory[2]) & @CRLF
    $Output &= 'Auslagerungsdatei ' & @CRLF
    $Output &= @TAB & '(Gesamt):' & @TAB & _DisplayMemorySize($aMemory[5]) & @CRLF
    $Output &= @TAB & '(Frei):' & @TAB & _DisplayMemorySize($aMemory[6]) & @CRLF & @CRLF
    $Output &= @CRLF & 'Netzwerk ' & @CRLF
    $Output &= '==============================================================' & @CRLF
    $Output &= 'Benutzername: ' & @TAB & @UserName & @CRLF
    $Output &= 'Computername: ' & @TAB & $objItem.CSName & ' ('
    $Output &= $objItem.Description & ')' & @CRLF
    $Output &= $Domain & @CRLF
    $IP = _GetIP()
    $Output &= 'Internet-IP: ' & @TAB & _Iif($IP <> -1, $IP, 'IP-Test fehlgeschlagen') & @CRLF
    $Output &= $DNSServer & @CRLF & @CRLF
    $Output &= 'Ping-Zeiten: ' & @CRLF
    _PingTime()
    Next
    Else
    $Output &= 'No WMI Objects Found for class: Win32_OperatingSystem' & @CRLF & @CRLF
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetData($Edit, ' Bitte warten...' & @CRLF & @CRLF & ' Win32_UserAccount')
    $Output &= @CRLF & 'Benutzerkonten' & @CRLF
    $Output &= '==============================================================' & @CRLF
    $colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_UserAccount', 'WQL', 0x30)
    If IsObj($colItems) Then
    For $objItem In $colItems
    If $objItem.Status = 'OK' Then
    $Output &= 'Name: ' & @TAB & $objItem.Name & @CRLF
    $Output &= 'Beschreibung: ' & @TAB & _Iif($objItem.Description <> '', $objItem.Description, 'nicht vorhanden') & @CRLF
    $Output &= 'Passwort benötigt:' & @TAB & _Iif($objItem.PasswordRequired = -1, 'Ja', 'Nein') & @CRLF
    $Output &= @TAB & 'änderbar:' & @TAB & _Iif($objItem.PasswordChangeable = -1, 'Ja', 'Nein') & @CRLF
    $Output &= @TAB & 'läuft ab:' & @TAB & _Iif($objItem.PasswordExpires = -1, 'Ja', 'Nein') & @CRLF & @CRLF
    EndIf
    Next
    Else
    $Output &= 'No WMI Objects Found for class: Win32_UserAccount' & @CRLF & @CRLF
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetData($Edit, ' Bitte warten...' & @CRLF & @CRLF & ' Win32_NetworkAdapter')
    $Output &= @CRLF & 'Netzwerkadapter' & @CRLF
    $Output &= '==============================================================' & @CRLF
    $colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_NetworkAdapter WHERE Netconnectionstatus = 2', 'WQL', 0x30)
    If IsObj($colItems) Then
    For $objItem In $colItems
    $Output &= 'Hersteller: ' & @TAB & $objItem.Manufacturer & @CRLF
    $Output &= 'Name: ' & @TAB & $objItem.Name & @CRLF
    $Output &= 'Adapter-Typ: ' & @TAB & $objItem.AdapterType & @CRLF
    $Output &= 'Kennung: ' & @TAB & $objItem.NetConnectionID & @CRLF
    $Output &= 'MAC-Addresse:' & @TAB & $objItem.MACAddress & @CRLF
    $colItems2 = $objWMIService.ExecQuery('SELECT * FROM Win32_NetworkAdapterConfiguration', 'WQL', 0x30)
    If IsObj($colItems2) Then
    For $objItem2 In $colItems2
    If $objItem.Caption = $objItem2.Caption Then
    If $objItem2.IPEnabled = -1 Then
    If $objItem2.DHCPEnabled = -1 Then
    $Output &= 'Adresstyp: ' & @TAB & 'von DHCP zugewiesen' & @CRLF
    $Output &= 'DHCP-Server: ' & @TAB & $objItem2.DHCPServer & @CRLF
    $Output &= 'IP erhalten: ' & @TAB & _WMIDateStringToDate($objItem2.DHCPLeaseObtained) & @CRLF
    $Output &= 'IP läuft ab: ' & @TAB & _WMIDateStringToDate($objItem2.DHCPLeaseExpires) & @CRLF
    Else
    $Output &= 'Adresstyp: ' & @TAB & 'Manuell konfiguriert' & @CRLF
    EndIf
    $Output &= 'IP-Addresse: ' & @TAB & $objItem2.IPAddress(0) & @CRLF
    $Output &= 'Subnetzmaske: ' & @TAB & $objItem2.IPSubnet(0) & @CRLF
    $Output &= 'Standardgateway: ' & @TAB & $objItem2.DefaultIPGateway(0) & @CRLF & @CRLF
    Else
    $Output &= @CRLF
    EndIf
    EndIf
    Next
    Else
    $Output &= 'No WMI Objects Found for class: Win32_NetworkAdapterConfiguration' & @CRLF & @CRLF
    EndIf
    Next
    Else
    $Output &= 'No WMI Objects Found for class: Win32_NetworkAdapter' & @CRLF & @CRLF
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetData($Edit, ' Bitte warten...' & @CRLF & @CRLF & ' Win32_Keyboard')
    $Output &= @CRLF & 'Tastatur(en) ' & @CRLF
    $Output &= '==============================================================' & @CRLF
    $colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_Keyboard', 'WQL', 0x30)
    If IsObj($colItems) Then
    For $objItem In $colItems
    $Output &= 'Tastatur-Typ: ' & @TAB & $objItem.CreationClassName & @CRLF
    $Output &= 'Tastenbelegung:' & @TAB & $KBLayout & @CRLF
    $Output &= 'Anschluss: ' & @TAB & $objItem.Description & @CRLF
    $Output &= 'Name: ' & @TAB & $objItem.Name & @CRLF
    $Output &= 'F-Tastenanzahl:' & @TAB & $objItem.NumberOfFunctionKeys & @CRLF & @CRLF
    Next
    Else
    $Output &= 'No WMI Objects Found for class: Win32_Keyboard' & @CRLF & @CRLF
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetData($Edit, ' Bitte warten...' & @CRLF & @CRLF & ' Win32_PointingDevice')
    $Output &= @CRLF & 'Mäuse ' & @CRLF
    $Output &= '==============================================================' & @CRLF
    $colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_PointingDevice', 'WQL', 0x30)
    If IsObj($colItems) Then
    For $objItem In $colItems
    $Output &= 'Hersteller: ' & @TAB & $objItem.Manufacturer & @CRLF
    $Output &= 'Name: ' & @TAB & $objItem.Name & @CRLF
    $Output &= 'Tastenanzahl:' & @TAB & $objItem.NumberOfButtons & @CRLF & @CRLF
    Next
    Else
    $Output &= 'No WMI Objects Found for class: Win32_PointingDevice' & @CRLF & @CRLF
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetData($Edit, ' Bitte warten...' & @CRLF & @CRLF & ' Win32_Printer')
    $Output &= @CRLF & 'Drucker ' & @CRLF
    $Output &= '==============================================================' & @CRLF
    $colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_Printer', 'WQL', 0x30)
    If IsObj($colItems) Then
    For $objItem In $colItems
    $Output &= 'Name: ' & @TAB & $objItem.Name & @CRLF
    $Output &= 'TreiberName: ' & @TAB & $objItem.DriverName & @CRLF
    $Output &= 'Anschluss: ' & @TAB & $objItem.PortName & @CRLF
    $Output &= 'Horiz. Auflösung: ' & @TAB & $objItem.HorizontalResolution & @CRLF
    $Output &= 'Vertik. Auflösung: ' & @TAB & $objItem.VerticalResolution & @CRLF & @CRLF
    Next
    Else
    $Output &= 'No WMI Objects Found for class: Win32_Printer' & @CRLF & @CRLF
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetData($Edit, ' Bitte warten...' & @CRLF & @CRLF & ' Win32_LogicalDisk')
    $Output &= @CRLF & 'Logische Laufwerke ' & @CRLF
    $Output &= '==============================================================' & @CRLF
    $colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_LogicalDisk', 'WQL', 0x30)
    If IsObj($colItems) Then
    For $objItem In $colItems
    $Output &= 'Laufwerk: ' & @TAB & $objItem.Name & @CRLF
    $Output &= 'Beschreibung: ' & @TAB & $objItem.Description & @CRLF
    If $objItem.Description = 'Netzwerkverbindung' Then
    $Output &= 'Netzwerkpfad: ' & @TAB & $objItem.ProviderName & @CRLF
    EndIf
    $Output &= 'Größe: ' & @TAB & _DisplayMemorySize($objItem.Size / 1024) & @CRLF
    $Output &= 'Freier Speicher: ' & @TAB & _DisplayMemorySize($objItem.FreeSpace / 1024) & @CRLF
    $Output &= 'DateiSystem: ' & @TAB & $objItem.FileSystem & @CRLF
    $Output &= 'Datenträger: ' & @TAB & $objItem.VolumeName & @CRLF
    $Output &= 'Seriennummer: ' & @TAB & $objItem.VolumeSerialNumber & @CRLF & @CRLF
    Next
    Else
    $Output &= 'No WMI Objects Found for class: Win32_LogicalDisk' & @CRLF & @CRLF
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetData($Edit, ' Bitte warten...' & @CRLF & @CRLF & ' Win32_DiskDrive')
    $Output &= @CRLF & 'Festplatte(n) ' & @CRLF
    $Output &= '==============================================================' & @CRLF
    $colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_DiskDrive', 'WQL', 0x30)
    If IsObj($colItems) Then
    For $objItem In $colItems
    $Output &= 'Bezeichnung: ' & @TAB & $objItem.Model & @CRLF
    $Output &= 'Größe: ' & @TAB & _DisplayMemorySize($objItem.Size / 1024) & @CRLF
    $Output &= 'Anschluss: ' & @TAB & $objItem.InterfaceType & @CRLF
    $Output &= 'Bytes/Sektor:' & @TAB & $objItem.BytesPerSector & @CRLF
    $Output &= 'PNPDeviceID: ' & @TAB & $objItem.PNPDeviceID & @CRLF
    $Output &= 'Status: ' & @TAB & $objItem.Status & @CRLF & @CRLF
    Next
    Else
    $Output &= 'No WMI Objects Found for class: Win32_DiskDrive' & @CRLF & @CRLF
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetData($Edit, ' Bitte warten...' & @CRLF & @CRLF & ' Win32_CDROMDrive')
    $Output &= @CRLF & 'CD-/DVD-ROM-Laufwerk(e) ' & @CRLF
    $Output &= '==============================================================' & @CRLF
    $colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_CDROMDrive', 'WQL', 0x30)
    If IsObj($colItems) Then
    For $objItem In $colItems
    $Output &= 'Laufwerk: ' & @TAB & $objItem.Drive & @CRLF
    $Output &= 'Bezeichnung: ' & @TAB & $objItem.Name & @CRLF
    $Output &= 'PNPDeviceID: ' & @TAB & $objItem.PNPDeviceID & @CRLF
    $Output &= 'Status: ' & @TAB & $objItem.Status & @CRLF & @CRLF
    Next
    Else
    $Output &= 'No WMI Objects Found for class: Win32_CDROMDrive' & @CRLF & @CRLF
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetData($Edit, ' Bitte warten...' & @CRLF & @CRLF & ' Win32_VideoController')
    $Output &= @CRLF & 'Grafikkarte(n) ' & @CRLF
    $Output &= '==============================================================' & @CRLF
    $colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_VideoController', 'WQL', 0x30)
    If IsObj($colItems) Then
    For $objItem In $colItems
    $strAcceleratorCapabilities = $objItem.AcceleratorCapabilities(0)
    $Output &= 'Hersteller: ' & @TAB & $objItem.AdapterCompatibility & @CRLF
    $Output &= 'Beschreibung: ' & @TAB & $objItem.Description & @CRLF
    $Output &= 'RAMDAC: ' & @TAB & $objItem.AdapterDACType & @CRLF
    $Output &= 'Grafikkarten-RAM: ' & @TAB & _DisplayMemorySize($objItem.AdapterRAM / 1024) & @CRLF
    $Output &= 'Horiz. Auflösung: ' & @TAB & $objItem.CurrentHorizontalResolution & @CRLF
    $Output &= 'Vertik. Auflösung: ' & @TAB & $objItem.CurrentVerticalResolution & @CRLF
    $Output &= 'Bits/Pixel: ' & @TAB & $objItem.CurrentBitsPerPixel & @CRLF
    $Output &= 'Anzahl der Farben: ' & @TAB & _StringAddThousandsSep($objItem.CurrentNumberOfColors, '.', ',') & @CRLF
    $Output &= 'TreiberVersion: ' & @TAB & $objItem.DriverVersion & @CRLF
    $Output &= 'Treiberdatum: ' & @TAB & _WMIDateStringToDate($objItem.DriverDate) & @CRLF & @CRLF
    Next
    Else
    $Output &= 'No WMI Objects Found for class: Win32_VideoController' & @CRLF & @CRLF
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetData($Edit, ' Bitte warten...' & @CRLF & @CRLF & ' Win32_SoundDevice')
    $Output &= @CRLF & 'Soundkarte(n) ' & @CRLF
    $Output &= '==============================================================' & @CRLF
    $colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_SoundDevice', 'WQL', 0x30)
    If IsObj($colItems) Then
    For $objItem In $colItems
    $Output &= 'Hersteller: ' & @TAB & $objItem.Manufacturer & @CRLF
    $Output &= 'Name: ' & @TAB & $objItem.Name & @CRLF
    $Output &= 'PNPDeviceID:' & @TAB & $objItem.PNPDeviceID & @CRLF & @CRLF
    Next
    Else
    $Output &= 'No WMI Objects Found for class: Win32_SoundDevice' & @CRLF & @CRLF
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetData($Edit, ' Bitte warten...' & @CRLF & @CRLF & ' Win32_PhysicalMemory')
    $Output &= @CRLF & 'Hauptspeicher (RAM) ' & @CRLF
    $Output &= '==============================================================' & @CRLF
    $colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_PhysicalMemory', 'WQL', 0x30)
    If IsObj($colItems) Then
    For $objItem In $colItems
    $Output &= 'Belegung: ' & @TAB & $objItem.BankLabel & @CRLF
    $Output &= 'Kapazität: ' & @TAB & _DisplayMemorySize($objItem.Capacity / 1024) & @CRLF
    $Output &= 'Bandbreite: ' & @TAB & $objItem.DataWidth & ' Bit' & @CRLF
    $Output &= 'Steckplatz: ' & @TAB & $objItem.DeviceLocator & @CRLF
    $Output &= 'FormFaktor: ' & @TAB & $objItem.FormFactor & @CRLF
    $Output &= 'Geschwindigkeit:' & @TAB & $objItem.Speed & ' MHz' & @CRLF & @CRLF
    Next
    Else
    $Output &= 'No WMI Objects Found for class: Win32_PhysicalMemory' & @CRLF & @CRLF
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetData($Edit, ' Bitte warten...' & @CRLF & @CRLF & ' Win32_CacheMemory')
    $colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_CacheMemory', 'WQL', 0x30)
    Global $Cache
    If IsObj($colItems) Then
    For $objItem In $colItems
    $Cache &= 'Speicher: ' & @TAB & $objItem.Purpose & ' (' & $objItem.InstalledSize & ' KB)' & @CRLF
    Next
    Else
    $Cache &= 'No WMI Objects Found for class: Win32_CacheMemory' & @CRLF & @CRLF
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetData($Edit, ' Bitte warten...' & @CRLF & @CRLF & ' Win32_Prozessor')
    $Output &= @CRLF & 'Prozessor(en) ' & @CRLF
    $Output &= '==============================================================' & @CRLF
    $colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_Processor', 'WQL', 0x30)
    If IsObj($colItems) Then
    For $objItem In $colItems
    $Output &= 'Prozessor: ' & @TAB & $objItem.DeviceID & @CRLF
    $Output &= 'Name: ' & @TAB & $objItem.Name & @CRLF
    $Output &= 'Sockel: ' & @TAB & $objItem.SocketDesignation & @CRLF
    $Output &= 'Taktfrequenz: ' & @TAB & $objItem.CurrentClockSpeed & ' MHz' & @CRLF
    $Output &= $Cache & @CRLF & @CRLF
    Next
    Else
    $Output &= 'No WMI Objects Found for class: Win32_Processor' & @CRLF & @CRLF
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetData($Edit, ' Bitte warten...' & @CRLF & @CRLF & ' Win32_BaseBoard')
    $Output &= @CRLF & 'Mainboard ' & @CRLF
    $Output &= '==============================================================' & @CRLF
    $colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_BaseBoard', 'WQL', 0x30)
    If IsObj($colItems) Then
    For $objItem In $colItems
    $Output &= 'Hersteller: ' & @TAB & $objItem.Manufacturer & @CRLF
    $Output &= 'Produkt: ' & @TAB & $objItem.Product & @CRLF
    $Output &= 'Version: ' & @TAB & $objItem.Version & @CRLF
    $Output &= 'Seriennummer:' & @TAB & $objItem.SerialNumber & @CRLF & @CRLF
    Next
    Else
    $Output &= 'No WMI Objects Found for class: Win32_BaseBoard' & @CRLF & @CRLF
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetData($Edit, ' Bitte warten...' & @CRLF & @CRLF & ' Win32_SystemSlot')
    $Output &= @CRLF & 'Steckplätze für Erweiterungskarten ' & @CRLF
    $Output &= '==============================================================' & @CRLF
    $colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_SystemSlot', 'WQL', 0x30)
    If IsObj($colItems) Then
    For $objItem In $colItems
    $Output &= 'Bezeichnung: ' & $objItem.SlotDesignation & @CRLF
    $Output &= 'Steckplatz belegt: ' & _Iif($objItem.CurrentUsage = 4, 'Ja', 'Nein') & @CRLF & @CRLF
    Next
    Else
    $Output &= 'No WMI Objects Found for class: ' & 'Win32_SystemSlot' & @CRLF & @CRLF
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetData($Edit, ' Bitte warten...' & @CRLF & @CRLF & ' Win32_BIOS')
    $Output &= @CRLF & 'BIOS ' & @CRLF
    $Output &= '==============================================================' & @CRLF
    $colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_BIOS', 'WQL', 0x30)
    If IsObj($colItems) Then
    For $objItem In $colItems
    $Output &= 'Hersteller: ' & @TAB & $objItem.Manufacturer & @CRLF
    $Output &= 'Name: ' & @TAB & $objItem.Name & @CRLF
    $Output &= 'Datum: ' & @TAB & _WMIDateStringToDate($objItem.ReleaseDate) & @CRLF
    $Output &= 'BIOS-Version:' & @TAB & $objItem.SMBIOSBIOSVersion & @CRLF & @CRLF
    Next
    Else
    $Output &= 'No WMI Objects Found for class: Win32_BIOS' & @CRLF & @CRLF
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlSetData($Edit, $Output)
    GUICtrlSetState($Edit, $GUI_FOCUS)
    GUICtrlSetState($End, $GUI_ENABLE)
    GUICtrlSetState($Send, $GUI_ENABLE)

    [/autoit] [autoit][/autoit] [autoit]

    While True
    Sleep(100)
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func _End()
    Exit
    EndFunc ;==>_End

    [/autoit] [autoit][/autoit] [autoit]

    Func _Send()
    _INetMail($s_MailTo, $s_MailSubject, '')
    ClipPut($Output)
    Sleep(2000)
    Send('{TAB 3}')
    Send('^v')
    EndFunc ;==>_Send

    [/autoit] [autoit][/autoit] [autoit]

    Func _WMIDateStringToDate($dtmDate)
    Return StringMid($dtmDate, 7, 2) & '.' & StringMid($dtmDate, 5, 2) & '.' & StringLeft($dtmDate, 4) _
    & ' ' & _
    StringMid($dtmDate, 9, 2) & ':' & StringMid($dtmDate, 11, 2) & ':' & StringMid($dtmDate, 13, 2)
    EndFunc ;==>_WMIDateStringToDate

    [/autoit] [autoit][/autoit] [autoit]

    Func _DisplayMemorySize($DMSize)
    Return _StringAddThousandsSep(Round($DMSize / 1024), '.', ',') & ' MB (' & _StringAddThousandsSep($DMSize * 1024, '.', ',') & ' Bytes)'
    EndFunc ;==>_DisplayMemorySize

    [/autoit] [autoit][/autoit] [autoit]

    Func _PingTime()
    Local $time
    $time = Ping('www.google.com', 1000)
    $Output &= 'www.google.com' & @TAB & _Iif(($time < 1000) And ($time > 0), $time & ' ms', 'Antwortzeit überschritten!') & @CRLF
    $time = Ping('www.google.de', 1000)
    $Output &= 'www.google.de' & @TAB & _Iif(($time < 1000) And ($time > 0), $time & ' ms', 'Antwortzeit überschritten!') & @CRLF
    $time = Ping('www.heise.de', 1000)
    $Output &= 'www.heise.de' & @TAB & _Iif(($time < 1000) And ($time > 0), $time & ' ms', 'Antwortzeit überschritten!') & @CRLF
    $time = Ping('www.ard.de', 1000)
    $Output &= 'www.ard.de' & @TAB & _Iif(($time < 1000) And ($time > 0), $time & ' ms', 'Antwortzeit überschritten!') & @CRLF
    $time = Ping('www.zdf.de', 1000)
    $Output &= 'www.zdf.de' & @TAB & _Iif(($time < 1000) And ($time > 0), $time & ' ms', 'Antwortzeit überschritten!') & @CRLF & @CRLF
    EndFunc ;==>_PingTime

    [/autoit] [autoit][/autoit] [autoit]

    ; ----------------------------------------------------------------------------
    ; AutoIt Version: 3.1.1 beta
    ; Author: Unknown & Thorsten Meger <[email='Thorsten.Meger@gmx.de'][/email]>
    ;
    ; Script Function: Decode REG_BINARY
    ; ----------------------------------------------------------------------------
    Func _DecodeProductKey($BinaryDPID)
    Local $bKey[15]
    Local $sKey[29]
    Local $Digits[24]
    Local $Value = 0
    Local $hi = 0
    Local $n = 0
    Local $i = 0
    Local $dlen = 29
    Local $slen = 15
    Local $Result
    $Digits = StringSplit('BCDFGHJKMPQRTVWXY2346789', '')
    $BinaryDPID = StringMid($BinaryDPID, 105, 30)
    For $i = 1 To 29 Step 2
    $bKey[Int($i / 2)] = Dec(StringMid($BinaryDPID, $i, 2))
    Next
    For $i = $dlen - 1 To 0 Step -1
    If Mod(($i + 1), 6) = 0 Then
    $sKey[$i] = '-'
    Else
    $hi = 0
    For $n = $slen - 1 To 0 Step -1
    $Value = BitOR(BitShift($hi, -8), $bKey[$n])
    $bKey[$n] = Int($Value / 24)
    $hi = Mod($Value, 24)
    Next
    $sKey[$i] = $Digits[$hi + 1]
    EndIf
    Next
    For $i = 0 To 28
    $Result = $Result & $sKey[$i]
    Next
    Return $Result
    EndFunc ;==>_DecodeProductKey

    [/autoit]

    Ich hab das nicht geschrieben.
    (c) liegt bei Oscar. - DEN Oscar ;)

    2 Mal editiert, zuletzt von seTTs (1. Juni 2009 um 20:44)

  • Hallo zusammen

    Ich benötige auch ein paar ganz bestimmte Infos.
    Und zwar geht es um die Netzwerkverbindungen.

    Was mich Interessiert:
    - Verwendete Geschwindigkeit (läuft die Netzwerkkarte auf 100Mbit oder Gbit?)
    - Half-/Fullduplex?

    Konnte leider nichts finden...

  • Hallo Sayen,

    schau doch mal in den Post #2, schau dir den Link dort an. Im dazugehörigen Demo-Skript für die Anwendung der UDF beginnt in Zeile 942 die Region Network Cards, ich denke das ist genau dass was du suchst, ich kann es aber nicht testen da ich kein Netzwerk installiert habe.

    mfg (Auto)Bert