Beiträge von Sen
-
-
Das ganze ist denke ich schwerer als ich dachte..
gerade mal aus Pluto kopiert:ZitatAlles anzeigen
Retrieving session ID from https://autoit.de/www.spin.de
Connecting to www.spin.de:3003
Session ID is 5sGsmE-7Y_jzp0pFFvNHzgEPuIgiMI3xGIn7bJycNjgg4157622
Retrieving channel list
Retrieving friends list
Checking for new messages
Checking for client update
Connection established
Sending client ID
Logging in as Sen.Sidethink
Case mode 3
Client authentication required, initiating challenge procedure
No mail (164 read)
Challenge received, sending answer
Login ok @ 14:30:45
Server rights 0
21445 users on serverUnd Spin scheint auch nicht auf IRC oder co zu basieren,
eigenes System eventuell? -
Ich arbeite immo an einem kleinen Clienten für die Seite "Spin.de"
das Problem:Ich habe nicht den Ansatz einer Idee wie man Empfangen/Senden coden soll
(Nicht von den Befehlen her sondern wie kommt man an den Chat?)Vorweg:
Spin.de verbietet zwar Fremdclienten allerdings nur solange
durch sie die Vorteile die man nur mit VIP bekommt "ausgehobelt" werden.
Solange Dinge wie "Kein VIP = Max 1 Raum offen" etc drin bleiben
wird das ganze genemigt.Vergleichtools:
Pluto - http://pluto.brain-killer.org/Eigentlich will ich Pluto lediglich "nachcoden" und einige Funktionen
einbauen wie "!befehle" etc. -
Ich habe das ganze auch nur richtig "gestellt".
-
Und dann das ganze nochmal richtig:
Spoiler anzeigen
[autoit]
[/autoit] [autoit][/autoit] [autoit]
;===================================================================================================
; INRadio-Localtuner by JuraX
;===================================================================================================#NoTrayIcon
[/autoit] [autoit][/autoit] [autoit]
#include <Bass.au3>
#include <BassConstants.au3>
#include <GUIConstantsEx.au3>
#include <GuiListView.au3>
#include <ListViewConstants.au3>
#include <sound.au3>
#include <WindowsConstants.au3>#Region StartUp
[/autoit] [autoit][/autoit] [autoit]
Local $progress_slider, $slots, $Form1
Global $gaDropFiles[1]
Global Const $WM_DROPFILES = 0x0233
Global $playing_state = -1;First Start
[/autoit] [autoit][/autoit] [autoit]
$firststart = IniRead("INRadio.ini", "Start", "firststart", "")
If $firststart = "" Then
MsgBox(0, "Warnung!", "Bitte über den Radiotuner Starten!")
Exit
ElseIf ProcessExists("Radiotuner.exe") Then
Else
MsgBox(0, "Warnung!", "Bitte über den Radiotuner Starten!")
Exit
EndIf;Bass StartUp
[/autoit] [autoit][/autoit] [autoit]
_BASS_STARTUP("BASS.dll")
_BASS_Init(0, -1, 44100, 0, "")
If @error Then
MsgBox(0, "Error", "Sound konnte nicht Initialisiert werden!")
Exit
EndIf;File Open
[/autoit] [autoit][/autoit] [autoit]
$file = FileOpenDialog("Open...", "", "MP3 Files (*.mp3)")
$MusicHandle = _BASS_StreamCreateFile(False, $file, 0, 0, 0)
$song_length = _BASS_ChannelGetLength($MusicHandle, $BASS_POS_BYTE)
If @error Then
MsgBox(0, "Error", "Konnte Audiodatei nicht laden!" & @CR & "Error = " & @error)
Exit
EndIf;Sonstiges
[/autoit] [autoit][/autoit] [autoit]
AdlibRegister("Aktualisieren", 100)
#EndRegion StartUp#Region GUI
[/autoit] [autoit][/autoit] [autoit]
$Form1 = GUICreate("INRadio-Localtuner", 380, 650, 193, 115)
$Close = GUICtrlCreateButton("Close", 296, 160, 75, 25, 0)
$Play = GUICtrlCreateButton("Play", 216, 160, 75, 25, 0)
$Stop = GUICtrlCreateButton("Stop", 136, 160, 75, 25, 0)
$newfile = GUICtrlCreateButton("Andere Datei", 36, 160, 75, 25, 0)
$progress_slider = GUICtrlCreateProgress(8, 32, 366, 20)
$slots = GUICtrlCreateLabel(GUICtrlRead($progress_slider) & "%", 8, 8, 150, 17)
;GUICtrlCreateLabel("Fortschritt", 8, 8, 150, 17)GUICtrlCreateLabel("Lautstärke", 8, 190, 80, 20)
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
$Volume_slider1 = GUICtrlCreateSlider(8, 210, 366, 80)
GUICtrlSetData($Volume_slider1, 50)
GUICtrlSetLimit(-1, 100, 0)
$Volume_slider2 = GUICtrlCreateSlider(8, 292, 366, 80)
GUICtrlSetData($Volume_slider2, 50)
GUICtrlSetLimit(-1, 100, 0)$hListView = GUICtrlCreateListView('Dateiname', 10, 375, 350, 200)
[/autoit] [autoit][/autoit] [autoit]
GUICtrlSetState(-1, $GUI_DROPACCEPTED)
GUIRegisterMsg($WM_DROPFILES, 'WM_DROPFILES_FUNC')
WinSetOnTop($Form1, '', 1)$rightVol = GUICtrlCreateProgress(8, 88, 366, 17)
[/autoit] [autoit][/autoit] [autoit]
GUICtrlSetLimit(-1, 100, 0)
GUICtrlCreateLabel("Right Channel Volume Level", 8, 112, 150, 17)
$LeftVol = GUICtrlCreateProgress(8, 136, 366, 17)
GUICtrlSetLimit(-1, 100, 0)
GUICtrlCreateLabel("Left Channel Volume Level", 8, 64, 150, 17)GUISetState(@SW_SHOW)
[/autoit] [autoit][/autoit] [autoit]
#EndRegion GUI#Region Loop
[/autoit] [autoit][/autoit] [autoit]
While 1
$current = _BASS_ChannelGetPosition($MusicHandle, $BASS_POS_BYTE)
$percent = Round(($current / $song_length) * 100, 0)
GUICtrlSetData($progress_slider, $percent)$levels = _BASS_ChannelGetLevel($MusicHandle)
[/autoit] [autoit][/autoit] [autoit]
$rightChLvl = _LoWord($levels)
$rightChLvlper = Round(($rightChLvl / 32768) * 100, 0)
$LeftChLvl = _HiWord($levels)
$leftChLvlper = Round(($LeftChLvl / 32768) * 100, 0)
GUICtrlSetData($rightVol, $rightChLvlper)
GUICtrlSetData($LeftVol, $leftChLvlper)If $progress_slider = 100 Then
[/autoit] [autoit][/autoit] [autoit]
$play_pause
EndIf$nMsg = GUIGetMsg()
[/autoit] [autoit][/autoit] [autoit]
Switch $nMsg
Case $GUI_EVENT_CLOSE, $Close
ProcessClose("Radiotuner.exe")
AdlibUnRegister("Aktualisieren")
Exit
Case $Play
Switch $playing_state
Case -1
_BASS_ChannelPlay($MusicHandle, 1)
$playing_state = 1
EndSwitch
Case $newfile
_BASS_ChannelStop($MusicHandle)
$file = FileOpenDialog("Open...", "", "MP3 Files (*.mp3)")
$MusicHandle = _BASS_StreamCreateFile(False, $file, 0, 0, 0)
_BASS_ChannelStop($MusicHandle)
Case $Volume_slider1
_BASS_ChannelSetVolume($MusicHandle, GUICtrlRead($Volume_slider1) / 100)
Case $Volume_slider2
SoundSetWaveVolume(GUICtrlRead($Volume_slider2))
Case $GUI_EVENT_DROPPED
For $i = 0 To UBound($gaDropFiles) - 1
GUICtrlCreateListViewItem(StringRegExpReplace($gaDropFiles[$i], '.*\\(.*)\..*', '$1'), $hListView)
_GUICtrlListView_SetColumnWidth($hListView, 0, $LVSCW_AUTOSIZE)
Next
Case $Stop
_BASS_ChannelStop($MusicHandle)
$playing_state = -1
EndSwitch
WEnd
#EndRegion Loop#Region Func's
[/autoit] [autoit][/autoit] [autoit]
Func OnAutoItExit()
_BASS_Free()
EndFunc ;==>OnAutoItExitFunc WM_DROPFILES_FUNC($hWnd, $msgID, $wParam, $lParam) ; diese Funktion wird benötigt, damit man auch mehrere Dateien droppen kann
[/autoit] [autoit][/autoit] [autoit]
Local $nSize, $pFileName
Local $nAmt = DllCall('shell32.dll', 'int', 'DragQueryFileW', 'hwnd', $wParam, 'int', 0xFFFFFFFF, 'ptr', 0, 'int', 255)
For $i = 0 To $nAmt[0] - 1
$nSize = DllCall('shell32.dll', 'int', 'DragQueryFileW', 'hwnd', $wParam, 'int', $i, 'ptr', 0, 'int', 0)
$nSize = $nSize[0] + 1
$pFileName = DllStructCreate('wchar[' & $nSize & ']')
DllCall('shell32.dll', 'int', 'DragQueryFileW', 'hwnd', $wParam, 'int', $i, 'ptr', DllStructGetPtr($pFileName), 'int', $nSize)
ReDim $gaDropFiles[$i + 1]
$gaDropFiles[$i] = DllStructGetData($pFileName, 1)
$pFileName = 0
Next
EndFunc ;==>WM_DROPFILES_FUNCFunc Aktualisieren()
[/autoit] [autoit][/autoit] [autoit]
$Sliderstatus = GUICtrlRead($progress_slider)
GUICtrlSetData($slots, $Sliderstatus)
EndFunc ;==>AktualisierenFunc _BASS_ChannelSetVolume($hChannel, $nVol)
[/autoit] [autoit][/autoit] [autoit]
Local $ret = _BASS_ChannelSetAttribute($hChannel, $BASS_ATTRIB_VOL, $nVol)
Return SetError(@error, @extended, $ret)
EndFunc ;==>_BASS_ChannelSetVolumeFunc _BASS_ChannelGetVolume($hChannel)
[/autoit]
Local $ret = _BASS_ChannelGetAttribute($hChannel, $BASS_ATTRIB_VOL)
Return SetError(@error, @extended, $ret)
EndFunc ;==>_BASS_ChannelGetVolume
#EndRegion Func's -
Alles gute Oscar & lass es krachen

-
Zitat
Doch war dabei, aber ich möchte die Daten ja Dratlos versenden, und nicht per Bluetooth
Kopf -> Tisch...
Bluetooth = dratlos
-
Gibt es sowas wie @SW_HIDE nicht auch für Datein?
Wäre zumindest praktisch.Achja & wo ich das Ava Bild grad sehe..
[Blockierte Grafik: http://z56.img-up.net/Ava82c05.png]
Version ohne "tote Pixel"
-
Zitat
Ja, denn es werden immer die Threads als "Neuster Thread" angezeigt, bei denen ein neuer Beitrag hinzugefügt wurde.
Der Grund warum das ganze keinen Sinn ergibt ist,
das mir der Thread hier als "neu" angezeigt wurde bevor ich
hier geschrieben habe. -
Danke Prog@ndy,
genau nach der Idee hab ich gesucht
-
Wundert mich grad.
Der Thread wurde eben bei mir als "neuster Thread" angezeigt o_O -
Zitat
genauso hatte ich es gemacht wie ich dir das beispiel geschickt hab sen
Das Beispiel konnte ich leider nicht speichern da mein Browser
eine ganze Zeit nicht ging und Verlauf etc gelöscht wurden..hast du es zufällig noch da?
-
Hilft hier evtl
[autoit]_WinAPI_WindowFromPoint
[/autoit]
weiter? -
Ich arbeite im Moment an einer kleinen UDF.
Bzw einem kleine Effekt.Einziges Problem:
Das Fenster wird immo nicht wiederhergestellt.Grund:
Die WinPos stimmt natürlich nicht. Ich müsste sie irgendwie bei Hide sichern
und bei Show wiederherstellen. Problem: WIe schaffe ich das innerhalb der UDF?Jemand eine Idee?
UDF WinRunTransEx
[autoit]
[/autoit]
Func WinRunTransEx($Window, $Mod)
$Pos = WinGetPos($Window)
Switch $Mod
Case "Show"
WinSetTrans($Window, "", 0)
GUISetState(@SW_SHOW, $Window)
For $i = 0 To 255 Step 5
WinSetTrans($Window, "", $i)
WinMove($Window, "", $Pos[0], $Pos[1], Round($i * ($Pos[2] / 255)), Round($i * ($Pos[3] / 255)), 1)
Sleep(10)
Next
Case "Hide"
For $i = 255 To 0 Step -5
WinSetTrans($Window, "", $i)
WinMove($Window, "", $Pos[0], $Pos[1], Round($i * ($Pos[2] / 255)), Round($i * ($Pos[3] / 255)), 1)
Sleep(10)
Next
GUISetState(@SW_HIDE, $Window)
EndSwitch
EndFunc ;==>WinRunTransEx -
Helfen wird dir, bei deiner Art zu schreiben keiner.
1. "Fail", "EpicFail" & co sind keine Wörter ohne Sinn wie du sie verwendest.
2. Auch in einem Forum stellt man sich nicht hin und sagt "Macht mal"
3. Ohne eigene Ideen wird dir hier keine sagen was du tun musstKurz & knapp:
Versuch selbst das ganze umzusetzen & wir helfen dir gerne
dabei. Wenn du es aber nicht mal versuchst dann haste Pech.
"Fail" & so
-
Neue Version:
Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist. ● TrayTips hinzugefügt.
● "All-Log" Funktion hinzugefügt (Context aufm Tab Reister)Das "größenanpassen" Problem regle ich morgen.
Sonst noch jemand Ideen? -
Werde ich alles 3 bis morgen umsetzen.
Danke für die Ideen
Kurze Frage noch:
Lieber MsgBox, TrayTip oder Statusbar was das laden angeht? -
Hängt am ersten Post als Download.
Sollte ich mir glaub ich angewöhnen bei 1000+ Zeilen
Danke für den Tipp SEuBo

-
So, ich hab dank SEuBos Hilfe jetzt die SysInfo Func's von Oscar mit drin.
Allerdings ist der Code etwas.. "groß" & leicht unübersichtlich geworden.Ideen für Verkürzungen, schnellere Funktionen & co?
Nur her damit
Achtung, Code ist "lang"

Spoiler anzeigen
[autoit]
[/autoit] [autoit][/autoit] [autoit]
;==============================================================
; AskSystem
;==============================================================
; Author: Sen
; Version: 1.7.2 Beta
;==============================================================
; Credits:
; Oscar - System Info Functions
; GTA-Spider - ProcessPath / Hwnd Function
; SEuBo - Assemble AskSystem with Oscar's Functions
; Xenobiologist - _DecodeProduktKey
; Prog@ndy - Dll Call for reading GetLocaleInfo
;==============================================================
#include <GuiListView.au3>
#include <GUIConstantsEx.au3>
#include <Array.au3>
#include <Date.au3>
#include <Inet.au3>
#include <Constants.au3>
#include <StaticConstants.au3>Dim $Tab[17]
[/autoit] [autoit][/autoit] [autoit]
Dim $List[17]
Local $LoadIf @OSType <> 'WIN32_NT' Then
[/autoit] [autoit][/autoit] [autoit]
MsgBox(48, "AskSystem - Error", "AskSystem funktioniert erst ab Windows 2000")
Exit
EndIf#Region GUI
[/autoit] [autoit][/autoit] [autoit]
$Main = GUICreate("AskSystem", 600, 400, -1, -1);Tab Menü
[/autoit] [autoit][/autoit] [autoit]
$Tab[0] = GUICtrlCreateTab(0, 0, 600, 400)
$Tab_Con = GUICtrlCreateContextMenu($Tab[0])
$Con_Refresh = GUICtrlCreateMenuItem("Refresh All", $Tab_Con)#Region Tab - Manager
[/autoit] [autoit][/autoit] [autoit]
$Tab[1] = GUICtrlCreateTabItem("Manager");ProgessBar
[/autoit] [autoit][/autoit] [autoit]
$ProgressP = GUICtrlCreateProgress(0, 250, 600, 15)
$ProgressD = GUICtrlCreateProgress(0, 385, 600, 15);ProzessListe - Process
[/autoit] [autoit][/autoit] [autoit]
$List[0] = GUICtrlCreateListView("Process|PID|Path|Title|Hwnd|Read|Write|Transfer|I/O", 0, 25, 600, 225)
_GUICtrlListView_RegisterSortCallBack($List[0])
_GUICtrlListView_SetColumnWidth($List[0], 0, 150)
_GUICtrlListView_SetColumnWidth($List[0], 1, 50)
_GUICtrlListView_SetColumnWidth($List[0], 2, 150)
_GUICtrlListView_SetColumnWidth($List[0], 3, 100)
_GUICtrlListView_SetColumnWidth($List[0], 4, 100)
_GUICtrlListView_SetColumnWidth($List[0], 5, 100);ProzessListe - Drives
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
$List[1] = GUICtrlCreateListView("Label|System|Serial|Type|Free|Total", 0, 265, 600, 120)
_GUICtrlListView_RegisterSortCallBack($List[1])
_GUICtrlListView_SetColumnWidth($List[1], 0, 120)
_GUICtrlListView_SetColumnWidth($List[1], 1, 70)
_GUICtrlListView_SetColumnWidth($List[1], 2, 100)
_GUICtrlListView_SetColumnWidth($List[1], 3, 80)
_GUICtrlListView_SetColumnWidth($List[1], 4, 100)
_GUICtrlListView_SetColumnWidth($List[1], 5, 100);Context Menü Process
[/autoit] [autoit][/autoit] [autoit]
$ContextP = GUICtrlCreateContextMenu($List[0])
$ProcessKill = GUICtrlCreateMenuItem("Kill Process", $ContextP)
$RefreshP = GUICtrlCreateMenuItem("Refresh", $ContextP)
$CopyInfoP = GUICtrlCreateMenuItem("Copy to Clipboard", $ContextP)
$SaveLogP = GUICtrlCreateMenuItem("Save Process Log", $ContextP);Context Menü Drives
[/autoit] [autoit][/autoit] [autoit]
$ContextD = GUICtrlCreateContextMenu($List[1])
$RefreshD = GUICtrlCreateMenuItem("Refresh", $ContextD)
$CopyInfoD = GUICtrlCreateMenuItem("Copy to Clipboard", $ContextD)
$SaveLogD = GUICtrlCreateMenuItem("Save Drive Log", $ContextD)
#EndRegion Tab - Manager#Region Tab - Windows
[/autoit] [autoit][/autoit] [autoit]
$Tab[2] = GUICtrlCreateTabItem("Windows")
$List[2] = GUICtrlCreateListView("||", 0, 25, 600, 375)
#EndRegion Tab - Windows#Region Tab - Drives
[/autoit] [autoit][/autoit] [autoit]
$Tab[3] = GUICtrlCreateTabItem("Drives")
$List[3] = GUICtrlCreateListView("||", 0, 25, 600, 375)
#EndRegion Tab - Drives#Region Tab - Harddisks
[/autoit] [autoit][/autoit] [autoit]
$Tab[4] = GUICtrlCreateTabItem("Harddisks")
$List[4] = GUICtrlCreateListView("||", 0, 25, 600, 375)
#EndRegion Tab - Harddisks#Region Tab - Cd-Rom
[/autoit] [autoit][/autoit] [autoit]
$Tab[5] = GUICtrlCreateTabItem("Cd-Rom")
$List[5] = GUICtrlCreateListView("||", 0, 25, 600, 375)
#EndRegion Tab - Cd-Rom#Region Tab - Network
[/autoit] [autoit][/autoit] [autoit]
$Tab[6] = GUICtrlCreateTabItem("Network")
$List[6] = GUICtrlCreateListView("||", 0, 25, 600, 375)
#EndRegion Tab - Network#Region Tab - Networkadapter
[/autoit] [autoit][/autoit] [autoit]
$Tab[7] = GUICtrlCreateTabItem("NetworkAdapter")
$List[7] = GUICtrlCreateListView("||", 0, 25, 600, 375)
#EndRegion Tab - Networkadapter#Region Tab - Processor
[/autoit] [autoit][/autoit] [autoit]
$Tab[8] = GUICtrlCreateTabItem("CPU")
$List[8] = GUICtrlCreateListView("||", 0, 25, 600, 375)
#EndRegion Tab - Processor#Region Tab - RAM
[/autoit] [autoit][/autoit] [autoit]
$Tab[9] = GUICtrlCreateTabItem("RAM")
$List[9] = GUICtrlCreateListView("||", 0, 25, 600, 375)
#EndRegion Tab - RAM#Region Tab - Graphiccard
[/autoit] [autoit][/autoit] [autoit]
$Tab[10] = GUICtrlCreateTabItem("Graphiccard")
$List[10] = GUICtrlCreateListView("||", 0, 25, 600, 375)
#EndRegion Tab - Graphiccard#Region Tab - Monitor
[/autoit] [autoit][/autoit] [autoit]
$Tab[11] = GUICtrlCreateTabItem("Monitor")
$List[11] = GUICtrlCreateListView("||", 0, 25, 600, 375)
#EndRegion Tab - Monitor#Region Tab - Printer
[/autoit] [autoit][/autoit] [autoit]
$Tab[12] = GUICtrlCreateTabItem("Printer")
$List[12] = GUICtrlCreateListView("||", 0, 25, 600, 375)
#EndRegion Tab - Printer#Region Tab - Soundcard
[/autoit] [autoit][/autoit] [autoit]
$Tab[13] = GUICtrlCreateTabItem("Soundcard")
$List[13] = GUICtrlCreateListView("||", 0, 25, 600, 375)
#EndRegion Tab - Soundcard#Region Tab - Mainboard
[/autoit] [autoit][/autoit] [autoit]
$Tab[14] = GUICtrlCreateTabItem("Mainboard")
$List[14] = GUICtrlCreateListView("||", 0, 25, 600, 375)
#EndRegion Tab - Mainboard#Region Tab - Sockets
[/autoit] [autoit][/autoit] [autoit]
$Tab[15] = GUICtrlCreateTabItem("Sockets")
$List[15] = GUICtrlCreateListView("||", 0, 25, 600, 375)
#EndRegion Tab - Sockets#Region Tab - Info
[/autoit] [autoit][/autoit] [autoit]
$Tab[16] = GUICtrlCreateTabItem("Info")
$List[16] = GUICtrlCreateListView("||", 0, 25, 600, 375)
_GUICtrlListView_SetColumnWidth($List[16], 0, 160)
_GUICtrlListView_SetColumnWidth($List[16], 1, 440)
_FillInfo()
#EndRegion Tab - Info;GUI Settings
[/autoit] [autoit][/autoit] [autoit]
WinRunTrans($Main, "Show")
#EndRegion GUI#Region StartUp
[/autoit] [autoit][/autoit] [autoit]
FillProcess()
FillDrives()
FillTabs()
#EndRegion StartUp#Region Case's
[/autoit] [autoit][/autoit] [autoit]
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Con_Refresh
For $i = "3" To "15"
_GUICtrlListView_DeleteAllItems($List[$i])
Next
FillTabs()
Case $RefreshP
FillProcess()
Case $RefreshD
FillDrives()
Case $SaveLogP
ProcessLog()
Case $SaveLogD
DriveLog()
Case $CopyInfoP
CopyToClipBoardP()
Case $CopyInfoD
CopyToClipBoardD()
Case $List[0]
_GUICtrlListView_SortItems($List[0], GUICtrlGetState($List[0]))
Case $List[1]
_GUICtrlListView_SortItems($List[1], GUICtrlGetState($List[1]))
Case $ProcessKill
KillProcess()
EndSwitch
WEnd
#EndRegion Case's#Region Func's
[/autoit] [autoit][/autoit] [autoit]
Func OnAutoItExit()
WinRunTrans($Main, "Hide")
_GUICtrlListView_UnRegisterSortCallBack($List[0])
_GUICtrlListView_UnRegisterSortCallBack($List[1])
EndFunc ;==>OnAutoItExitFunc _FillInfo()
[/autoit] [autoit][/autoit] [autoit]
GUICtrlCreateListViewItem("Programm Name:|AskSystem", $List[16])
GUICtrlCreateListViewItem("Version:|1.7.2 Beta", $List[16])
GUICtrlCreateListViewItem("Date:|25.12.2009", $List[16])
GUICtrlCreateListViewItem("|", $List[16])
GUICtrlCreateListViewItem("Coder:|Sen (Christopher Klay)", $List[16])
GUICtrlCreateListViewItem("|", $List[16])
GUICtrlCreateListViewItem("Credits:|Xenobiologist (Thorsten Meger) - _DecodeProduktKey Function", $List[16])
GUICtrlCreateListViewItem("|Prog@ndy - Dll Call for reading GetLocaleInfo", $List[16])
GUICtrlCreateListViewItem("|SEuBo - Assemble AskSystem 1.6 with the new Func's from Oscar ", $List[16])
GUICtrlCreateListViewItem("|Oscar - System Info Functions", $List[16])
GUICtrlCreateListViewItem("|GTASpider - ProcessPath & Hwnd Info Function", $List[16])
GUICtrlCreateListViewItem("|", $List[16])
GUICtrlCreateListViewItem("|Thanks to everyone for testing, bug reporting", $List[16])
GUICtrlCreateListViewItem("|and good criticism.", $List[16])
GUICtrlCreateListViewItem("|", $List[16])
GUICtrlCreateListViewItem("Changelog:|- 1.7.2 -", $List[16])
GUICtrlCreateListViewItem("|- System Info's added", $List[16])
GUICtrlCreateListViewItem("|- Info-Site added", $List[16])
EndFunc ;==>_FillInfoFunc KillProcess()
[/autoit] [autoit][/autoit] [autoit]
$ClickedItem = GUICtrlRead($List[0])
If $ClickedItem > 0 Then
$Read = GUICtrlRead($ClickedItem)
$Read = StringSplit($Read, "|")
If ProcessExists($Read[1]) <> "0" Then
Do
ProcessClose($Read[1])
Until ProcessExists($Read[1]) = "0"
_GUICtrlListView_DeleteItemsSelected($List[0])
FillProcess()
EndIf
EndIf
EndFunc ;==>KillProcessFunc CopyToClipBoardP()
[/autoit] [autoit][/autoit] [autoit]
$ClickedItem = GUICtrlRead($List[0])
If $ClickedItem > 0 Then
$Read = GUICtrlRead($ClickedItem)
ClipPut($Read)
EndIf
EndFunc ;==>CopyToClipBoardPFunc CopyToClipBoardD()
[/autoit] [autoit][/autoit] [autoit]
$ClickedItem = GUICtrlRead($List[1])
If $ClickedItem > 0 Then
$Read = GUICtrlRead($ClickedItem)
ClipPut($Read)
EndIf
EndFunc ;==>CopyToClipBoardDFunc ProcessLog()
[/autoit] [autoit][/autoit] [autoit]
_GUICtrlListView_BeginUpdate($List[0])
If FileExists(@DesktopCommonDir & "/AskProcess - Process.txt") = "0" Then
FileWrite(@DesktopCommonDir & "/AskProcess - Process.txt", "")
EndIf
$ListLines = _GUICtrlListView_GetItemCount($List[0])
$LogFile = FileOpen(@DesktopCommonDir & "/AskProcess - Process.txt", 2)
If $LogFile <> -1 Then
For $i = 0 To $ListLines
$LogLine = _GUICtrlListView_GetItemTextString($List[0], $i)
FileWriteLine(@DesktopCommonDir & "/AskProcess - Process.txt", $LogLine)
Next
EndIf
FileClose(@DesktopCommonDir & "/AskProcess - Process.txt")
_GUICtrlListView_EndUpdate($List[0])
EndFunc ;==>ProcessLogFunc DriveLog()
[/autoit] [autoit][/autoit] [autoit]
_GUICtrlListView_BeginUpdate($List[1])
If FileExists(@DesktopCommonDir & "/AskProcess - Drives.txt") = "0" Then
FileWrite(@DesktopCommonDir & "/AskProcess - Drives.txt", "")
EndIf
$ListLines = _GUICtrlListView_GetItemCount($List[1])
$LogFile = FileOpen(@DesktopCommonDir & "/AskProcess - Drives.txt", 2)
If $LogFile <> -1 Then
For $i = 0 To $ListLines
$LogLine = _GUICtrlListView_GetItemTextString($List[1], $i)
FileWriteLine(@DesktopCommonDir & "/AskProcess - Drives.txt", $LogLine)
Next
EndIf
FileClose(@DesktopCommonDir & "/AskProcess - Drives.txt")
_GUICtrlListView_EndUpdate($List[1])
EndFunc ;==>DriveLogFunc FillDrives()
[/autoit] [autoit][/autoit] [autoit]
_GUICtrlListView_BeginUpdate($List[1])
_GUICtrlListView_DeleteAllItems($List[1])
$Drives = DriveGetDrive("ALL")
For $i = "1" To $Drives[0]
GUICtrlSetData($ProgressD, (100 * $i) / $Drives[0])
$Name = DriveGetLabel($Drives[$i])
$Type = DriveGetType($Drives[$i])
$Serial = DriveGetSerial($Drives[$i])
$System = DriveGetFileSystem($Drives[$i])
$Free = Round(DriveSpaceFree($Drives[$i]) / 1000, 2) & "Gb"
$Total = Round(DriveSpaceTotal($Drives[$i]) / 1000, 2) & "Gb"
GUICtrlCreateListViewItem($Name & "|" & $System & "|" & $Serial & "|" & $Type & "|" & $Free & "|" & $Total, $List[1])
Next
_GUICtrlListView_EndUpdate($List[1])
EndFunc ;==>FillDrivesFunc FillProcess()
[/autoit] [autoit][/autoit] [autoit]
_GUICtrlListView_BeginUpdate($List[0])
_GUICtrlListView_DeleteAllItems($List[0])
$Process_List = ProcessList()
$ReadAll = "0"
$WriteAll = "0"
For $i = 2 To $Process_List[0][0]
GUICtrlSetData($ProgressP, (100 * $i) / $Process_List[0][0])
$Stats = ProcessGetStats($Process_List[$i][0], 1)
$Path = _PidGetPath($Process_List[$i][1])
If IsArray($Stats) Then
$ReadAll = $ReadAll + $Stats[3]
$WriteAll = $WriteAll + $Stats[4]
EndIf
If $Path = "0" Then
$Path = "-"
EndIf
$Title = _WinGetInfoByPID($Process_List[$i][1])
If IsArray($Title) Then
If IsArray($Stats) Then
GUICtrlCreateListViewItem($Process_List[$i][0] & "|" & $Process_List[$i][1] & "|" & $Path & "|" & $Title[1][1] & "|" & $Title[1][2] & "|" & $Stats[3] * 1000 & "|" & $Stats[4] * 1000 & "|" & $Stats[5] * 1000 & "|" & $Stats[2], $List[0])
Else
GUICtrlCreateListViewItem($Process_List[$i][0] & "|" & $Process_List[$i][1] & "|" & $Path & "|" & $Title[1][1] & "|" & $Title[1][2] & "|-|-|-|-", $List[0])
EndIf
Else
If IsArray($Stats) Then
GUICtrlCreateListViewItem($Process_List[$i][0] & "|" & $Process_List[$i][1] & "|" & $Path & "|-|-|" & $Stats[3] * 1000 & "|" & $Stats[4] * 1000 & "|" & $Stats[5] * 1000 & "|" & $Stats[2], $List[0])
Else
GUICtrlCreateListViewItem($Process_List[$i][0] & "|" & $Process_List[$i][1] & "|" & $Path & "|-|-|-|-|-|-|-", $List[0])
EndIf
EndIf
Next
_GUICtrlListView_EndUpdate($List[0])
EndFunc ;==>FillProcessFunc FillTabs()
[/autoit] [autoit][/autoit] [autoit]
; Windows
$aWMIINfo = _CI_GetWindowsInfo()
$hLVHandle = GUICtrlGetHandle($List[2])
_ArrayUmdrehen($aWMIINfo)
For $i = 0 To UBound($aWMIINfo) - 1
GUICtrlCreateListViewItem($aWMIINfo[$i][0] & "|" & $aWMIINfo[$i][1], $List[2])
Next
_GUICtrlListView_SetColumnWidth($hLVHandle, 0, $LVSCW_AUTOSIZE)
_GUICtrlListView_SetColumnWidth($hLVHandle, 1, $LVSCW_AUTOSIZE); Drives
[/autoit] [autoit][/autoit] [autoit]
$aWMIINfo = _CI_GetLogicalDisk()
$hLVHandle = GUICtrlGetHandle($List[3])
;~ _ArrayUmdrehen($aWinInfo)
For $x = 1 To UBound($aWMIINfo) - 1
For $i = 0 To UBound($aWMIINfo, 2) - 1
GUICtrlCreateListViewItem($aWMIINfo[0][$i] & "|" & $aWMIINfo[$x][$i], $List[3])
Next
GUICtrlCreateListViewItem("|", $List[3])
Next
_GUICtrlListView_SetColumnWidth($hLVHandle, 0, $LVSCW_AUTOSIZE)
_GUICtrlListView_SetColumnWidth($hLVHandle, 1, $LVSCW_AUTOSIZE);Harddrives
[/autoit] [autoit][/autoit] [autoit]
$aWMIINfo = _CI_GetHarddrives()
$hLVHandle = GUICtrlGetHandle($List[4])
;~ _ArrayUmdrehen($aWinInfo)
For $x = 1 To UBound($aWMIINfo) - 1
For $i = 0 To UBound($aWMIINfo, 2) - 1
GUICtrlCreateListViewItem($aWMIINfo[0][$i] & "|" & $aWMIINfo[$x][$i], $List[4])
Next
GUICtrlCreateListViewItem("|", $List[4])
Next
_GUICtrlListView_SetColumnWidth($hLVHandle, 0, $LVSCW_AUTOSIZE)
_GUICtrlListView_SetColumnWidth($hLVHandle, 1, $LVSCW_AUTOSIZE);Cd-Rom
[/autoit] [autoit][/autoit] [autoit]
$aWMIINfo = _CI_GetCDROM()
$hLVHandle = GUICtrlGetHandle($List[5])
;~ _ArrayUmdrehen($aWinInfo)
For $x = 1 To UBound($aWMIINfo) - 1
For $i = 0 To UBound($aWMIINfo, 2) - 1
GUICtrlCreateListViewItem($aWMIINfo[0][$i] & "|" & $aWMIINfo[$x][$i], $List[5])
Next
GUICtrlCreateListViewItem("|", $List[5])
Next
_GUICtrlListView_SetColumnWidth($hLVHandle, 0, $LVSCW_AUTOSIZE)
_GUICtrlListView_SetColumnWidth($hLVHandle, 1, $LVSCW_AUTOSIZE);Network
[/autoit] [autoit][/autoit] [autoit]
$aWMIINfo = _CI_GetNetwork()
$hLVHandle = GUICtrlGetHandle($List[6])
;~ _ArrayUmdrehen($aWinInfo)
For $x = 1 To UBound($aWMIINfo) - 1
For $i = 0 To UBound($aWMIINfo, 2) - 1
GUICtrlCreateListViewItem($aWMIINfo[0][$i] & "|" & $aWMIINfo[$x][$i], $List[6])
Next
GUICtrlCreateListViewItem("|", $List[6])
Next
_GUICtrlListView_SetColumnWidth($hLVHandle, 0, $LVSCW_AUTOSIZE)
_GUICtrlListView_SetColumnWidth($hLVHandle, 1, $LVSCW_AUTOSIZE);NetworkAdapter
[/autoit] [autoit][/autoit] [autoit]
$aWMIINfo = _CI_GetNetworkAdapter()
$hLVHandle = GUICtrlGetHandle($List[7])
;~ _ArrayUmdrehen($aWinInfo)
For $x = 1 To UBound($aWMIINfo) - 1
For $i = 0 To UBound($aWMIINfo, 2) - 1
GUICtrlCreateListViewItem($aWMIINfo[0][$i] & "|" & $aWMIINfo[$x][$i], $List[7])
Next
GUICtrlCreateListViewItem("|", $List[7])
Next
_GUICtrlListView_SetColumnWidth($hLVHandle, 0, $LVSCW_AUTOSIZE)
_GUICtrlListView_SetColumnWidth($hLVHandle, 1, $LVSCW_AUTOSIZE);CPU
[/autoit] [autoit][/autoit] [autoit]
$aWMIINfo = _CI_GetCPU()
$hLVHandle = GUICtrlGetHandle($List[8])
;~ _ArrayUmdrehen($aWinInfo)
For $x = 1 To UBound($aWMIINfo) - 1
For $i = 0 To UBound($aWMIINfo, 2) - 1
GUICtrlCreateListViewItem($aWMIINfo[0][$i] & "|" & $aWMIINfo[$x][$i], $List[8])
Next
GUICtrlCreateListViewItem("|", $List[8])
Next
_GUICtrlListView_SetColumnWidth($hLVHandle, 0, $LVSCW_AUTOSIZE)
_GUICtrlListView_SetColumnWidth($hLVHandle, 1, $LVSCW_AUTOSIZE);RAM
[/autoit] [autoit][/autoit] [autoit]
$aWMIINfo = _CI_GetRAM()
$hLVHandle = GUICtrlGetHandle($List[9])
;~ _ArrayUmdrehen($aWinInfo)
For $x = 1 To UBound($aWMIINfo) - 1
For $i = 0 To UBound($aWMIINfo, 2) - 1
GUICtrlCreateListViewItem($aWMIINfo[0][$i] & "|" & $aWMIINfo[$x][$i], $List[9])
Next
GUICtrlCreateListViewItem("|", $List[9])
Next
_GUICtrlListView_SetColumnWidth($hLVHandle, 0, $LVSCW_AUTOSIZE)
_GUICtrlListView_SetColumnWidth($hLVHandle, 1, $LVSCW_AUTOSIZE);Graphiccard
[/autoit] [autoit][/autoit] [autoit]
$aWMIINfo = _CI_GetVideoController()
$hLVHandle = GUICtrlGetHandle($List[10])
;~ _ArrayUmdrehen($aWinInfo)
For $x = 1 To UBound($aWMIINfo) - 1
For $i = 0 To UBound($aWMIINfo, 2) - 1
GUICtrlCreateListViewItem($aWMIINfo[0][$i] & "|" & $aWMIINfo[$x][$i], $List[10])
Next
GUICtrlCreateListViewItem("|", $List[10])
Next
_GUICtrlListView_SetColumnWidth($hLVHandle, 0, $LVSCW_AUTOSIZE)
_GUICtrlListView_SetColumnWidth($hLVHandle, 1, $LVSCW_AUTOSIZE);Monitor
[/autoit] [autoit][/autoit] [autoit]
$aWMIINfo = _CI_GetMonitor()
$hLVHandle = GUICtrlGetHandle($List[11])
;~ _ArrayUmdrehen($aWinInfo)
For $x = 1 To UBound($aWMIINfo) - 1
For $i = 0 To UBound($aWMIINfo, 2) - 1
GUICtrlCreateListViewItem($aWMIINfo[0][$i] & "|" & $aWMIINfo[$x][$i], $List[11])
Next
GUICtrlCreateListViewItem("|", $List[11])
Next
_GUICtrlListView_SetColumnWidth($hLVHandle, 0, $LVSCW_AUTOSIZE)
_GUICtrlListView_SetColumnWidth($hLVHandle, 1, $LVSCW_AUTOSIZE);Printer
[/autoit] [autoit][/autoit] [autoit]
$aWMIINfo = _CI_GetPrinter()
$hLVHandle = GUICtrlGetHandle($List[12])
;~ _ArrayUmdrehen($aWinInfo)
For $x = 1 To UBound($aWMIINfo) - 1
For $i = 0 To UBound($aWMIINfo, 2) - 1
GUICtrlCreateListViewItem($aWMIINfo[0][$i] & "|" & $aWMIINfo[$x][$i], $List[12])
Next
GUICtrlCreateListViewItem("|", $List[12])
Next
_GUICtrlListView_SetColumnWidth($hLVHandle, 0, $LVSCW_AUTOSIZE)
_GUICtrlListView_SetColumnWidth($hLVHandle, 1, $LVSCW_AUTOSIZE);Soundcard
[/autoit] [autoit][/autoit] [autoit]
$aWMIINfo = _CI_GetSoundDevice()
$hLVHandle = GUICtrlGetHandle($List[13])
;~ _ArrayUmdrehen($aWinInfo)
For $x = 1 To UBound($aWMIINfo) - 1
For $i = 0 To UBound($aWMIINfo, 2) - 1
GUICtrlCreateListViewItem($aWMIINfo[0][$i] & "|" & $aWMIINfo[$x][$i], $List[13])
Next
GUICtrlCreateListViewItem("|", $List[13])
Next
_GUICtrlListView_SetColumnWidth($hLVHandle, 0, $LVSCW_AUTOSIZE)
_GUICtrlListView_SetColumnWidth($hLVHandle, 1, $LVSCW_AUTOSIZE);Mainboard
[/autoit] [autoit][/autoit] [autoit]
$aWMIINfo = _CI_GetMainBoard()
$hLVHandle = GUICtrlGetHandle($List[14])
;~ _ArrayUmdrehen($aWinInfo)
For $x = 1 To UBound($aWMIINfo) - 1
For $i = 0 To UBound($aWMIINfo, 2) - 1
GUICtrlCreateListViewItem($aWMIINfo[0][$i] & "|" & $aWMIINfo[$x][$i], $List[14])
Next
GUICtrlCreateListViewItem("|", $List[14])
Next
_GUICtrlListView_SetColumnWidth($hLVHandle, 0, $LVSCW_AUTOSIZE)
_GUICtrlListView_SetColumnWidth($hLVHandle, 1, $LVSCW_AUTOSIZE);Sockel
[/autoit] [autoit][/autoit] [autoit]
$aWMIINfo = _CI_GetSystemSlot()
$hLVHandle = GUICtrlGetHandle($List[15])
;~ _ArrayUmdrehen($aWinInfo)
For $x = 1 To UBound($aWMIINfo) - 1
For $i = 0 To UBound($aWMIINfo, 2) - 1
GUICtrlCreateListViewItem($aWMIINfo[0][$i] & "|" & $aWMIINfo[$x][$i], $List[15])
Next
GUICtrlCreateListViewItem("|", $List[15])
Next
_GUICtrlListView_SetColumnWidth($hLVHandle, 0, $LVSCW_AUTOSIZE)
_GUICtrlListView_SetColumnWidth($hLVHandle, 1, $LVSCW_AUTOSIZE)
EndFunc ;==>FillTabsFunc _PidGetPath($pid = "", $strComputer = 'localhost')
[/autoit] [autoit][/autoit] [autoit]
If $pid = "" Then $pid = WinGetProcess(WinGetTitle(""))
$wbemFlagReturnImmediately = 0x10
$wbemFlagForwardOnly = 0x20
$colItems = ""
$objWMIService = ObjGet("winmgmts:\\" & $strComputer & "\root\CIMV2")
$colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_Process WHERE ProcessId = " & $pid, "WQL", $wbemFlagReturnImmediately + $wbemFlagForwardOnly)
If IsObj($colItems) Then
For $objItem In $colItems
If $objItem.ExecutablePath Then Return $objItem.ExecutablePath
Next
EndIf
EndFunc ;==>_PidGetPathFunc _CI_SerialToString($sSerial)
[/autoit] [autoit][/autoit] [autoit]
Local $sOut = ''
For $i = 1 To StringLen($sSerial) Step 2
$sOut &= Chr(Dec(StringMid($sSerial, $i, 2)))
Next
Return $sOut
EndFunc ;==>_CI_SerialToStringFunc _WinGetInfoByPID($sPID)
[/autoit] [autoit][/autoit] [autoit]
Local $aPList = ProcessList(), $iPID
For $iiCount = 1 To $aPList[0][0]
If $aPList[$iiCount][1] = $sPID Then
If $sPID = 0 Then Return 0
$iPID &= $aPList[$iiCount][1] & Chr(01)
EndIf
Next
$iPID = StringSplit($iPID, Chr(01))
If $iPID = 0 Then Return SetError(1, 0, 0)
Local $aStoreHwndAndText[2][9], $nCount = 1
$OptWSC = Opt('WinSearchChildren', 1)
$OptWDHT = Opt('WinDetectHiddenText', 1)
Local $aWinList = WinList()
For $iCount = 1 To $aWinList[0][0]
For $xCount = 1 To $iPID[0]
If WinGetProcess($aWinList[$iCount][1]) = $iPID[$xCount] And _
$aWinList[$iCount][0] <> '' Then
Local $aWinPos = WinGetPos($aWinList[$iCount][1])
Local $aWinClient = WinGetClientSize($aWinList[$iCount][1])
$nCount += 1
ReDim $aStoreHwndAndText[$nCount][9]
$aStoreHwndAndText[$nCount - 1][1] = $aWinList[$iCount][0]
$aStoreHwndAndText[$nCount - 1][2] = $aWinList[$iCount][1]
$aStoreHwndAndText[$nCount - 1][3] = WinGetText($aWinList[$iCount][1])
$aStoreHwndAndText[$nCount - 1][4] = $aWinPos[0]
$aStoreHwndAndText[$nCount - 1][5] = $aWinPos[1]
$aStoreHwndAndText[$nCount - 1][6] = $aWinClient[0]
$aStoreHwndAndText[$nCount - 1][7] = $aWinClient[1]
$aStoreHwndAndText[$nCount - 1][8] = WinGetClassList($aWinList[$iCount][1])
EndIf
Next
Next
Opt('WinSearchChildren', $OptWSC)
Opt('WinDetectHiddenText', $OptWDHT)
If $nCount = 1 Then Return SetError(2, 0, 0)
Return $aStoreHwndAndText
EndFunc ;==>_WinGetInfoByPIDFunc _CI_GetWindowsInfo($strComputer = '.')
[/autoit] [autoit][/autoit] [autoit]
Local $aReturn[2][17] = [[ _
'Betriebssystem:', 'Version:', 'Sprachversion:', 'Tastatur:', 'Boot-Laufwerk:', 'Windows-Verzeichnis:', _
'Speicherplatz:', 'Hauptspeicher:', 'Auslagerungsdatei:', 'Installationsdatum:', 'Zuletzt gestartet:', _
'Heutiges Datum:', 'Benutzername:', 'Benutzerverzeichnis:', 'Produktkey:', 'Hintergrundbild:', 'Bildschirmschoner:']]
Local $aTmp, $sOSLang = @OSLang, $sKBLayout = @KBLayout, $sDigitalProductID, $sWallpaper = 'Nicht vorhanden', $sScreenSaver = 'Nicht vorhanden'
Local $x = 0, $objWMIService, $colItems, $aMemory = MemGetStats(), $sX64 = ''
$aTmp = DllCall('kernel32.dll', 'int', 'GetLocaleInfo', 'dword', '0x' & $sOSLang, 'dword', BitOR(0x2, 0x80000000), 'str', '', 'int', 85)
If IsArray($aTmp) Then $sOSLang = $aTmp[3]
$aTmp = DllCall('kernel32.dll', 'int', 'GetLocaleInfo', 'dword', '0x' & $sKBLayout, 'dword', BitOR(0x2, 0x80000000), 'str', '', 'int', 85)
If IsArray($aTmp) Then $sKBLayout = $aTmp[3]
If @OSArch <> 'X86' Then $sX64 = '64'
$sDigitalProductID = RegRead('HKEY_LOCAL_MACHINE' & $sX64 & '\SOFTWARE\Microsoft\Windows NT\CurrentVersion', 'DigitalProductID')
$objWMIService = ObjGet('winmgmts:\\' & $strComputer & '\root\cimv2')
If Not IsObj($objWMIService) Then Return SetError(1, 0, 0)
$colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_Desktop', 'WQL', 0x30)
If IsObj($colItems) Then
For $objItem In $colItems
If StringInStr($objItem.Name, @UserName) Then
If $objItem.Wallpaper <> '' Then $sWallpaper = $objItem.Wallpaper
If $objItem.ScreenSaverExecutable <> '' Then $sScreenSaver = $objItem.ScreenSaverExecutable
EndIf
Next
EndIf
$colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_OperatingSystem', 'WQL', 0x30)
If IsObj($colItems) Then
For $objItem In $colItems
$aReturn[1][0] = $objItem.Caption & ' (' & @OSArch & ')'
$aReturn[1][1] = $objItem.Version
$aReturn[1][2] = $sOSLang
$aReturn[1][3] = $sKBLayout
$aReturn[1][4] = $objItem.BootDevice
$aReturn[1][5] = $objItem.WindowsDirectory
$aReturn[1][6] = 'Laufwerk "' & $objItem.SystemDrive & '\" ' & _ByteAutoSize(DriveSpaceTotal($objItem.SystemDrive) * 2 ^ 20)
$aReturn[1][6] &= ' (' & _ByteAutoSize(DriveSpaceFree($objItem.SystemDrive) * 2 ^ 20) & ' frei)'
$aReturn[1][7] = _ByteAutoSize($aMemory[1] * 1024, 0, 3)
$aReturn[1][8] = _ByteAutoSize($objItem.SizeStoredInPagingFiles * 1024, 0, 3)
$aReturn[1][9] = _WMIDateStringToDate($objItem.InstallDate)
$aReturn[1][10] = _WMIDateStringToDate($objItem.LastBootUpTime)
$aReturn[1][11] = _NowCalc()
$aReturn[1][12] = @UserName
$aReturn[1][13] = @UserProfileDir
$aReturn[1][14] = _DecodeProductKey($sDigitalProductID)
$aReturn[1][15] = $sWallpaper
$aReturn[1][16] = $sScreenSaver
Next
EndIf
Return $aReturn
EndFunc ;==>_CI_GetWindowsInfoFunc _CI_GetHarddrives($strComputer = '.')
[/autoit] [autoit][/autoit] [autoit]
Local $aReturn[1][8] = [[ _
'Bezeichnung:', 'Größe:', 'Anschluss:', 'Bytes/Sektor:', 'Anzahl der Sektoren:', _
'PNPDeviceID:', 'Status:', 'Seriennr. (Hardware):']]
Local $x = 0, $objWMIService, $colItems
$objWMIService = ObjGet('winmgmts:\\' & $strComputer & '\root\cimv2')
If Not IsObj($objWMIService) Then Return SetError(1, 0, 0)
$colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_DiskDrive', 'WQL', 0x30)
If IsObj($colItems) Then
For $objItem In $colItems
$x += 1
ReDim $aReturn[$x + 1][8]
$aReturn[$x][0] = $objItem.Model
$aReturn[$x][1] = _ByteAutoSize($objItem.Size)
$aReturn[$x][2] = $objItem.InterfaceType
$aReturn[$x][3] = $objItem.BytesPerSector
$aReturn[$x][4] = $objItem.TotalSectors
$aReturn[$x][5] = $objItem.PNPDeviceID
$aReturn[$x][6] = $objItem.Status
Switch @OSVersion
Case 'WIN_VISTA', 'WIN_7'
If Number($objItem.SerialNumber) > 0 Then
$aReturn[$x][7] = $objItem.SerialNumber & ' ("' & _CI_SerialToString($objItem.SerialNumber) & '")'
Else
$aReturn[$x][7] = 'nicht vorhanden'
EndIf
Case Else
$aReturn[$x][7] = 'Wird von ' & @OSVersion & ' nicht unterstützt!'
EndSwitch
Next
EndIf
Return $aReturn
EndFunc ;==>_CI_GetHarddrivesFunc _CI_GetLogicalDisk($strComputer = '.')
[/autoit] [autoit][/autoit] [autoit]
Local $aReturn[1][9] = [[ _
'Laufwerk:', 'Beschreibung:', 'Netzwerkpfad:', 'Zugriff:', 'Größe:', 'Freier Speicher:', _
'Dateisystem:', 'Datenträgername:', 'Seriennr. (Datenträger):']]
Local $x = 0, $objWMIService, $colItems, $aAccess[2] = ['R/W', 'R']
$objWMIService = ObjGet('winmgmts:\\' & $strComputer & '\root\cimv2')
If Not IsObj($objWMIService) Then Return SetError(1, 0, 0)
$colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_LogicalDisk', 'WQL', 0x30)
If IsObj($colItems) Then
For $objItem In $colItems
$x += 1
ReDim $aReturn[$x + 1][9]
$aReturn[$x][0] = $objItem.Name
$aReturn[$x][1] = $objItem.Description
If $objItem.Description = 'Netzwerkverbindung' Then
$aReturn[$x][2] = $objItem.ProviderName
Else
$aReturn[$x][2] = '---'
EndIf
If String($objItem.FileSystem) <> '' Then
If String($objItem.Access) <> '' Then
$aReturn[$x][3] = $aAccess[Number($objItem.Access)]
Else
$aReturn[$x][3] = 'nicht verfügbar'
EndIf
$aReturn[$x][4] = _ByteAutoSize($objItem.Size)
$aReturn[$x][5] = _ByteAutoSize($objItem.FreeSpace)
$aReturn[$x][6] = $objItem.FileSystem
$aReturn[$x][7] = '"' & $objItem.VolumeName & '"'
$aReturn[$x][8] = $objItem.VolumeSerialNumber
EndIf
Next
EndIf
Return $aReturn
EndFunc ;==>_CI_GetLogicalDiskFunc _CI_GetCDROM($strComputer = '.')
[/autoit] [autoit][/autoit] [autoit]
Local $aReturn[1][9] = [[ _
'Laufwerk:', 'Bezeichnung:', 'Typ:', 'PNPDeviceID:', 'Laufwerk-Status:', _
'Disc-Status:', 'Disc-Name:', 'Disc-Größe:', 'Seriennr. (Disc):']]
Local $x = 0, $objWMIService, $colItems, $aMedia[2] = ['keine Disc eingelegt', 'Disc eingelegt']
$objWMIService = ObjGet('winmgmts:\\' & $strComputer & '\root\cimv2')
If Not IsObj($objWMIService) Then Return SetError(1, 0, 0)
$colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_CDROMDrive', 'WQL', 0x30)
If IsObj($colItems) Then
For $objItem In $colItems
$x += 1
ReDim $aReturn[$x + 1][9]
$aReturn[$x][0] = $objItem.Drive
$aReturn[$x][1] = $objItem.Name
$aReturn[$x][2] = $objItem.MediaType
$aReturn[$x][3] = $objItem.PNPDeviceID
$aReturn[$x][4] = $objItem.Status
$aReturn[$x][5] = $aMedia[Abs($objItem.MediaLoaded)]
If Abs($objItem.MediaLoaded) Then
$aReturn[$x][6] = '"' & $objItem.VolumeName & '"'
$aReturn[$x][7] = _ByteAutoSize($objItem.Size)
$aReturn[$x][8] = $objItem.VolumeSerialNumber
EndIf
Next
EndIf
Return $aReturn
EndFunc ;==>_CI_GetCDROMFunc _CI_GetNetwork($strComputer = '.')
[/autoit] [autoit][/autoit] [autoit]
Local $aReturn[2][10] = [[ _
'Benutzername:', 'Computername:', 'LAN-IP-Adresse:', 'DNS-Server:', 'Arbeitsgruppe:', _
'WAN-IP-Adresse:', 'Ping-Zeiten:', ' google.de', ' heise.de', ' t-online.de']]
Local $x = 0, $objWMIService, $colItems
$objWMIService = ObjGet('winmgmts:\\' & $strComputer & '\root\cimv2')
If Not IsObj($objWMIService) Then Return SetError(1, 0, 0)
$aReturn[1][0] = @UserName
$aReturn[1][1] = @ComputerName
$aReturn[1][2] = _CI_GetLANIP()
$aReturn[1][3] = _CI_GetDNS()
$colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_ComputerSystem', 'WQL', 0x30)
If IsObj($colItems) Then
For $objItem In $colItems
$aReturn[1][4] = $objItem.Domain
$aReturn[1][5] = _GetIP()
Next
EndIf
$aReturn[1][7] = _CI_PingCheck('google.de')
$aReturn[1][8] = _CI_PingCheck('heise.de')
$aReturn[1][9] = _CI_PingCheck('t-online.de')
Return $aReturn
EndFunc ;==>_CI_GetNetworkFunc _CI_GetLANIP()
[/autoit] [autoit][/autoit] [autoit]
Local $sPID = Run(@ComSpec & " /c ping -4 -n 1 " & @ComputerName, @SystemDir, @SW_HIDE, $STDOUT_CHILD)
Local $sOut = ''
While 1
$sOut &= StdoutRead($sPID)
If @error Then ExitLoop
WEnd
Return StringRegExpReplace($sOut, '(?s).+\[(.+)\].+', '$1')
EndFunc ;==>_CI_GetLANIPFunc _CI_GetDNS()
[/autoit] [autoit][/autoit] [autoit]
Local $sPID = Run(@ComSpec & " /c nslookup " & @ComputerName, @SystemDir, @SW_HIDE, $STDOUT_CHILD)
Local $sOut = ''
While 1
$sOut &= StdoutRead($sPID)
If @error Then ExitLoop
WEnd
Return StringRegExpReplace($sOut, '(?s)Server:\h+(\S+).*?Address:\h+(\S+).*', '$2 ("$1")')
EndFunc ;==>_CI_GetDNSFunc _CI_PingCheck($sURL)
[/autoit] [autoit][/autoit] [autoit]
Local $iRet, $aError[5] = ['', 'Computer ist offline', 'Computer ist nicht erreichbar', 'Falsche Adresse', 'Anderer Fehler']
$iRet = Ping($sURL, 1000)
If Not @error Then Return '~ ' & $iRet & ' ms'
Return $aError[@error]
EndFunc ;==>_CI_PingCheckFunc _CI_GetNetworkAdapter($strComputer = '.')
[/autoit] [autoit][/autoit] [autoit]
Local $aReturn[1][12] = [[ _
'Hersteller:', 'Name:', 'Adapter-Typ:', 'Kennung:', _
'MAC-Adresse:', 'IP-Adresse:', 'IP-Subnetzmaske:', 'Adresstyp:', _
'DHCP-Server:', 'IP erhalten:', 'IP läuft ab:', 'Standardgateway:']]
Local $x = 0, $objWMIService, $colItems, $colItems2
$objWMIService = ObjGet('winmgmts:\\' & $strComputer & '\root\cimv2')
If Not IsObj($objWMIService) Then Return SetError(1, 0, 0)
$colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_NetworkAdapter WHERE Netconnectionstatus > 0', 'WQL', 0x30)
If Not IsObj($colItems) Then Return SetError(2, 0, 0)
For $objItem In $colItems
$x += 1
ReDim $aReturn[$x + 1][12]
$aReturn[$x][0] = $objItem.Manufacturer
$aReturn[$x][1] = $objItem.Name
$aReturn[$x][2] = $objItem.AdapterType
$aReturn[$x][3] = $objItem.NetConnectionID
$aReturn[$x][4] = $objItem.MACAddress
$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
$aReturn[$x][5] = $objItem2.IPAddress(0)
$aReturn[$x][6] = $objItem2.IPSubnet(0)
If $objItem2.DHCPEnabled = -1 Then
$aReturn[$x][7] = 'von DHCP zugewiesen'
$aReturn[$x][8] = $objItem2.DHCPServer
$aReturn[$x][9] = _WMIDateStringToDate($objItem2.DHCPLeaseObtained)
$aReturn[$x][10] = _WMIDateStringToDate($objItem2.DHCPLeaseExpires)
Else
$aReturn[$x][7] = 'Manuell konfiguriert'
EndIf
$aReturn[$x][11] = $objItem2.DefaultIPGateway(0)
EndIf
EndIf
Next
EndIf
Next
Return $aReturn
EndFunc ;==>_CI_GetNetworkAdapterFunc _CI_GetCPU($strComputer = '.')
[/autoit] [autoit][/autoit] [autoit]
Local $aReturn[2][12] = [[ _
'Prozessor:', 'Name:', 'Beschreibung:', 'Sockel:', 'Taktfrequenz:', 'Ext. Taktfrequenz:', 'Spannung:', _
'Adress-Bitbreite:', 'Daten-Bitbreite:', 'Prozessor-ID:', '', '']]
Local $x = 0, $objWMIService, $colItems
$objWMIService = ObjGet('winmgmts:\\' & $strComputer & '\root\cimv2')
If Not IsObj($objWMIService) Then Return SetError(1, 0, 0)
$colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_Processor', 'WQL', 0x30)
If IsObj($colItems) Then
For $objItem In $colItems
$x += 1
ReDim $aReturn[$x + 1][12]
$aReturn[$x][0] = $objItem.DeviceID
$aReturn[$x][1] = $objItem.Name
$aReturn[$x][2] = $objItem.Description
$aReturn[$x][3] = $objItem.SocketDesignation
$aReturn[$x][4] = $objItem.CurrentClockSpeed & ' MHz (max. ' & $objItem.MaxClockSpeed & ' MHz)'
$aReturn[$x][5] = $objItem.ExtClock & ' MHz'
$aReturn[$x][6] = Round($objItem.CurrentVoltage / 10, 1) & ' V'
$aReturn[$x][7] = $objItem.AddressWidth & ' Bit'
$aReturn[$x][8] = $objItem.DataWidth & ' Bit'
$aReturn[$x][9] = $objItem.ProcessorId
Switch @OSVersion
Case 'WIN_VISTA', 'WIN_7'
$aReturn[0][10] = 'Prozessorkerne:'
$aReturn[0][11] = 'logische Prozessoren:'
$aReturn[$x][10] = $objItem.NumberOfCores
$aReturn[$x][11] = $objItem.NumberOfLogicalProcessors
EndSwitch
Next
EndIf
Return $aReturn
EndFunc ;==>_CI_GetCPUFunc _CI_GetRAM($strComputer = '.')
[/autoit] [autoit][/autoit] [autoit]
Local $aMemType[22] = ['Unbekannt', 'Anderes', 'DRAM', 'Sync DRAM', 'Cache DRAM', _
'EDO', 'EDRAM', 'VRAM', 'SRAM', 'RAM', 'ROM', _
'Flash', 'EEPROM', 'FEPROM', 'EPROM', 'CDRAM', '3DRAM', _
'SDRAM', 'SGRAM', 'RDRAM', 'DDR', 'DDR-2']
Local $aFormFactor[24] = ['Unbekannt', 'Andere', 'SIP', 'DIP', 'ZIP', 'SOJ', _
'Proprietär', 'SIMM', 'DIMM', 'TSOP', 'PGA', 'RIMM', _
'SODIMM', 'SRIMM', 'SMD', 'SSMP', 'QFP', 'TQFP', _
'SOIC', 'LCC', 'PLCC', 'BGA', 'FPBGA', 'LGA']
Local $aErrCorr[8] = ['Reserviert', 'Andere', 'Unbekannt', 'Keine', 'Parity', 'Single-bit ECC', 'Multi-bit ECC', 'CRC']
Local $aReturn[2][8] = [[ _
'Belegung:', 'Kapazität:', 'Daten-Bitbreite:', 'Steckplatz:', _
'Typ:', 'Format:', 'Fehlerkorrektur:', 'Bezeichnung:']]
Local $x = 0, $objWMIService, $colItems, $iMemDev, $iMaxCap, $iErrCorr
$objWMIService = ObjGet('winmgmts:\\' & $strComputer & '\root\cimv2')
If Not IsObj($objWMIService) Then Return SetError(1, 0, 0)
$colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_PhysicalMemoryArray', 'WQL', 0x30)
If IsObj($colItems) Then
For $objItem In $colItems
$iMemDev = $objItem.MemoryDevices
$iMaxCap = _ByteAutoSize($objItem.MaxCapacity * 1024, 0, 3)
$iErrCorr = Number($objItem.MemoryErrorCorrection)
Next
EndIf
$colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_PhysicalMemory', 'WQL', 0x30)
If IsObj($colItems) Then
For $objItem In $colItems
$x += 1
ReDim $aReturn[$x + 1][8]
$aReturn[$x][0] = $objItem.BankLabel
$aReturn[$x][1] = _ByteAutoSize($objItem.Capacity, 0, 3) & ' (max. ' & $iMaxCap & ')'
$aReturn[$x][2] = $objItem.TotalWidth & ' Bit'
$aReturn[$x][3] = $objItem.DeviceLocator & ' (max. ' & $iMemDev & ' Steckplätze)'
$aReturn[$x][4] = $aMemType[Number($objItem.MemoryType)]
$aReturn[$x][5] = $aFormFactor[Number($objItem.FormFactor)]
$aReturn[$x][6] = $aErrCorr[$iErrCorr]
$aReturn[$x][7] = $objItem.PartNumber
Next
EndIf
Return $aReturn
EndFunc ;==>_CI_GetRAMFunc _CI_GetVideoController($strComputer = '.')
[/autoit] [autoit][/autoit] [autoit]
Local $aReturn[2][12] = [[ _
'Hersteller:', 'Beschreibung:', 'RAMDAC:', 'Grafikkarten-RAM:', _
'RAM-Typ:', 'Horiz. Auflösung:', 'Vertik. Auflösung:', 'Bits/Pixel:', _
'Anzahl der Farben:', 'Bildwiederholfrequenz:', 'Treiberversion:', 'Treiberdatum:']]
Local $aRAMType[14] = ['', 'Anderer', 'Unbekannt', 'VRAM', 'DRAM', 'SRAM', 'WRAM', 'EDO RAM', _
'Burst Sync DRAM', 'Pipelined Burst SRAM', 'CDRAM', '3DRAM', 'SDRAM', 'SGRAM']
Local $x = 0, $objWMIService, $colItems, $Output
$objWMIService = ObjGet('winmgmts:\\' & $strComputer & '\root\cimv2')
If Not IsObj($objWMIService) Then Return SetError(1, 0, 0)
$colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_VideoController', 'WQL', 0x30)
If IsObj($colItems) Then
For $objItem In $colItems
$x += 1
ReDim $aReturn[$x + 1][12]
$aReturn[$x][0] = $objItem.AdapterCompatibility
$aReturn[$x][1] = $objItem.Description
$aReturn[$x][2] = $objItem.AdapterDACType
$aReturn[$x][3] = _ByteAutoSize($objItem.AdapterRAM, 0, 3)
$aReturn[$x][4] = $aRAMType[Number($objItem.VideoMemoryType)]
$aReturn[$x][5] = $objItem.CurrentHorizontalResolution
$aReturn[$x][6] = $objItem.CurrentVerticalResolution
$aReturn[$x][7] = $objItem.CurrentBitsPerPixel
$aReturn[$x][8] = _StringAddThousandsSep($objItem.CurrentNumberOfColors, '.', ',')
$aReturn[$x][9] = $objItem.CurrentRefreshRate & ' Hz'
$aReturn[$x][10] = $objItem.DriverVersion
$aReturn[$x][11] = _WMIDateStringToDate($objItem.DriverDate)
Next
EndIf
Return $aReturn
EndFunc ;==>_CI_GetVideoControllerFunc _CI_GetMonitor($strComputer = '.')
[/autoit] [autoit][/autoit] [autoit]
Local $aReturn[2][8] = [[ _
'Hersteller:', 'Modell:', 'Breite (Pixel):', 'Höhe (Pixel):', _
'Pixel pro Inch (X):', 'Pixel pro Inch (Y):', 'Monitorgröße (ca.):', 'PNPDeviceID:']]
Local $x = 0, $objWMIService, $colItems, $Output
$objWMIService = ObjGet('winmgmts:\\' & $strComputer & '\root\cimv2')
If Not IsObj($objWMIService) Then Return SetError(1, 0, 0)
$colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_DesktopMonitor', 'WQL', 0x30)
If IsObj($colItems) Then
For $objItem In $colItems
$x += 1
ReDim $aReturn[$x + 1][8]
$aReturn[$x][0] = $objItem.MonitorManufacturer
$aReturn[$x][1] = $objItem.Name
$aReturn[$x][2] = $objItem.ScreenWidth
$aReturn[$x][3] = $objItem.ScreenHeight
$aReturn[$x][4] = $objItem.PixelsPerXLogicalInch
$aReturn[$x][5] = $objItem.PixelsPerYLogicalInch
$aReturn[$x][6] = Round($objItem.ScreenWidth / ($objItem.PixelsPerXLogicalInch / 2.54), 2) & _
' x ' & Round($objItem.ScreenHeight / ($objItem.PixelsPerYLogicalInch / 2.54), 2) & ' cm²'
$aReturn[$x][7] = $objItem.PNPDeviceID
Next
EndIf
Return $aReturn
EndFunc ;==>_CI_GetMonitorFunc _CI_GetPrinter($strComputer = '.')
[/autoit] [autoit][/autoit] [autoit]
Local $aReturn[2][5] = [['Name:', 'Treibername:', 'Anschluss:', 'Horiz. Auflösung:', 'Vertik. Auflösung:']]
Local $x = 0, $objWMIService, $colItems
$objWMIService = ObjGet('winmgmts:\\' & $strComputer & '\root\cimv2')
If Not IsObj($objWMIService) Then Return SetError(1, 0, 0)
$colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_Printer', 'WQL', 0x30)
If IsObj($colItems) Then
For $objItem In $colItems
$x += 1
ReDim $aReturn[$x + 1][5]
$aReturn[$x][0] = $objItem.Name
$aReturn[$x][1] = $objItem.DriverName
$aReturn[$x][2] = $objItem.PortName
$aReturn[$x][3] = $objItem.HorizontalResolution
$aReturn[$x][4] = $objItem.VerticalResolution
Next
EndIf
Return $aReturn
EndFunc ;==>_CI_GetPrinterFunc _CI_GetSoundDevice($strComputer = '.')
[/autoit] [autoit][/autoit] [autoit]
Local $aReturn[2][3] = [['Hersteller:', 'Name:', 'PNPDeviceID:']]
Local $x = 0, $objWMIService, $colItems
$objWMIService = ObjGet('winmgmts:\\' & $strComputer & '\root\cimv2')
If Not IsObj($objWMIService) Then Return SetError(1, 0, 0)
$colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_SoundDevice', 'WQL', 0x30)
If IsObj($colItems) Then
For $objItem In $colItems
$x += 1
ReDim $aReturn[$x + 1][3]
$aReturn[$x][0] = $objItem.Manufacturer
$aReturn[$x][1] = $objItem.Name
$aReturn[$x][2] = $objItem.PNPDeviceID
Next
EndIf
Return $aReturn
EndFunc ;==>_CI_GetSoundDeviceFunc _CI_GetMainBoard($strComputer = '.')
[/autoit] [autoit][/autoit] [autoit]
Local $aReturn[2][12] = [[ _
'Hersteller:', 'Produkt:', 'Version:', 'Seriennummer:', 'Ext. Anschlüsse:', _
'Int. Anschlüsse:', '', 'BIOS-Hersteller:', 'Name:', 'Version:', 'Datum:', 'Seriennummer:']]
Local $x = 1, $objWMIService, $colItems, $sExtConnector = '', $sIntConnector = '', $sTmp
$objWMIService = ObjGet('winmgmts:\\' & $strComputer & '\root\cimv2')
If Not IsObj($objWMIService) Then Return SetError(1, 0, 0)
$colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_PortConnector', 'WQL', 0x30)
If IsObj($colItems) Then
For $objItem In $colItems
$sTmp = $objItem.ExternalReferenceDesignator
If StringLen($sTmp) > 1 Then
$sExtConnector &= $sTmp & ' ** '
ContinueLoop
EndIf
$sTmp = $objItem.InternalReferenceDesignator
If StringLen($sTmp) > 1 Then $sIntConnector &= $sTmp & ' ** '
Next
EndIf
$sExtConnector = StringTrimRight($sExtConnector, 4)
$sIntConnector = StringTrimRight($sIntConnector, 4)
$colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_BaseBoard', 'WQL', 0x30)
If IsObj($colItems) Then
For $objItem In $colItems
$aReturn[$x][0] = $objItem.Manufacturer
$aReturn[$x][1] = $objItem.Product
$aReturn[$x][2] = $objItem.Version
$aReturn[$x][3] = $objItem.SerialNumber
$aReturn[$x][4] = $sExtConnector
$aReturn[$x][5] = $sIntConnector
Next
EndIf
$colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_BIOS', 'WQL', 0x30)
If IsObj($colItems) Then
For $objItem In $colItems
$aReturn[$x][7] = $objItem.Manufacturer
$aReturn[$x][8] = $objItem.Name
$aReturn[$x][9] = $objItem.BIOSVersion(0)
$aReturn[$x][10] = _WMIDateStringToDate($objItem.ReleaseDate)
$aReturn[$x][11] = $objItem.SerialNumber
Next
EndIf
Return $aReturn
EndFunc ;==>_CI_GetMainBoardFunc _CI_GetSystemSlot($strComputer = '.')
[/autoit] [autoit][/autoit] [autoit]
Local $aReturn[2][3] = [['Bezeichnung:', 'Steckplatz belegt:', 'max. Datenbreite:']]
Local $aUsage[5] = ['Reserviert', 'Anderer', 'Unbekannt', 'Nein', 'Ja']
Local $x = 0, $objWMIService, $colItems
$objWMIService = ObjGet('winmgmts:\\' & $strComputer & '\root\cimv2')
If Not IsObj($objWMIService) Then Return SetError(1, 0, 0)
$colItems = $objWMIService.ExecQuery('SELECT * FROM Win32_SystemSlot', 'WQL', 0x30)
If IsObj($colItems) Then
For $objItem In $colItems
$x += 1
ReDim $aReturn[$x + 1][3]
$aReturn[$x][0] = $objItem.SlotDesignation
$aReturn[$x][1] = $aUsage[$objItem.CurrentUsage]
$aReturn[$x][2] = 2 ^ ($objItem.MaxDataWidth + 3) & ' Bits'
Next
EndIf
Return $aReturn
EndFunc ;==>_CI_GetSystemSlotFunc _ByteAutoSize($iSize, $iRound = 2, $iFormat = 0, $bThousands = True)
[/autoit] [autoit][/autoit] [autoit]
Local $aSize[4] = [' Byte', ' KByte', ' MByte', ' GByte'], $sReturn
If $iFormat < 0 Or $iFormat > 4 Then $iFormat = 0
If $iRound < 0 Or $iRound > 8 Then $iRound = 2
If Not IsBool($bThousands) Then $bThousands = False
$iSize = Abs($iSize)
If $iFormat = 0 Then
For $i = 30 To 0 Step -10
If $iSize > (2 ^ $i) Then
$iFormat = $i / 10 + 1
ExitLoop
EndIf
Next
EndIf
If $iFormat = 0 Then $iFormat = 1
$sReturn = StringFormat('%.' & $iRound & 'f', Round($iSize / (2 ^ (($iFormat - 1) * 10)), $iRound))
If $bThousands Then $sReturn = _StringAddThousandsSep($sReturn, '.', ',')
Return $sReturn & $aSize[$iFormat - 1]
EndFunc ;==>_ByteAutoSizeFunc _WMIDateStringToDate($dtmDate)
[/autoit] [autoit][/autoit] [autoit]
Return (StringLeft($dtmDate, 4) & '/' & StringMid($dtmDate, 5, 2) & '/' & StringMid($dtmDate, 7, 2) _
& ' ' & StringMid($dtmDate, 9, 2) & ':' & StringMid($dtmDate, 11, 2) & ':' & StringMid($dtmDate, 13, 2))
EndFunc ;==>_WMIDateStringToDateFunc _DecodeProductKey($BinaryDPID)
[/autoit] [autoit][/autoit] [autoit]
If IsBinary($BinaryDPID) Then $BinaryDPID = StringMid($BinaryDPID, 3) ; Changed because Beta 3.2.13.2
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 ;==>_DecodeProductKeyFunc _StringAddThousandsSep($sString, $sThousands = -1, $sDecimal = -1)
[/autoit] [autoit][/autoit] [autoit]
Local $sResult = "" ; Force string
Local $rKey = "HKCU\Control Panel\International"
If $sDecimal = -1 Then $sDecimal = RegRead($rKey, "sDecimal")
If $sThousands = -1 Then $sThousands = RegRead($rKey, "sThousand")
Local $aNumber = StringRegExp($sString, "(\D?\d+)\D?(\d*)", 1) ; This one works for negatives.
If UBound($aNumber) = 2 Then
Local $sLeft = $aNumber[0]
While StringLen($sLeft)
$sResult = $sThousands & StringRight($sLeft, 3) & $sResult
$sLeft = StringTrimRight($sLeft, 3)
WEnd
$sResult = StringTrimLeft($sResult, StringLen($sThousands)) ; Strip leading thousands separator
If $aNumber[1] <> "" Then $sResult &= $sDecimal & $aNumber[1]
EndIf
Return $sResult
EndFunc ;==>_StringAddThousandsSepFunc _ArrayUmdrehen(ByRef $avArray)
[/autoit] [autoit][/autoit] [autoit]
;SEuBo
If UBound($avArray, 0) > 2 Then Return
$1st = UBound($avArray, 1)
$2nd = UBound($avArray, 2)
Local $aRet[$2nd][$1st]
For $s1 = 0 To $1st - 1
For $s2 = 0 To $2nd - 1
$aRet[$s2][$s1] = $avArray[$s1][$s2]
Next
Next
$avArray = $aRet
EndFunc ;==>_ArrayUmdrehenFunc WinRunTrans($Window, $Mod)
[/autoit]
If $Mod = "Show" Then
WinSetTrans($Window, "", 0)
GUISetState(@SW_SHOW, $Window)
For $i = 0 To 255 Step 5
WinSetTrans($Window, "", $i)
Sleep(10)
Next
ElseIf $Mod = "Hide" Then
For $i = 255 To 0 Step -5
WinSetTrans($Window, "", $i)
Sleep(10)
Next
GUISetState(@SW_HIDE, $Window)
EndIf
EndFunc ;==>WinRunTrans
#EndRegion Func'sEdit:
Download da der Source zu lang ist:Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist. -
Oscar?
Wäre es okay wenn ich die Infos mit in AskSystem einbaue?
Wäre eine geniale Ergänzung & wird auch hier kostenlos
veröffentlicht