ZitatZ.B das hier
Dim $Servers[4][2], $Icons[4]
Soweit ich verstanden habe sind das mehrdimensionale Arrays bloß was speicherst du da [4][2].
Ja $Servers ist ein mehrdimensionales (zweidimensionales) Array (4 Zeilen und 2 Spalten) darin speichere ich die Servernamen und IpAdressen:
$Servers[0][0] = "Lxmain"
$Servers[0][1] = "192.168.1.1"
$Servers[1][0] = "Ntmain"
$Servers[1][1] = "192.168.2.1"
$Servers[2][0] = "Notesapp"
$Servers[2][1] = "192.168.2.2"
$Servers[3][0] = "Notesmail"
$Servers[3][1] = "192.168.2.3"
$Icons ist ein eindimensionales Array und speichert die ControlID's von GUICtrlCreateIcon:
Damit ich später auch das entsprechende Icon zuweisen kann:
Mit Ubound kann man die Dimensionen von Arrays abfragen, ohne weitere Angaben wird immer die grösse der 1. Dimension (Wert in der 1. eckigen Klammer) zurückgegeben, Ubound($Servers) gibt also 4 zurück. Mit Ubound($Server,2) wird die 2. Dimension zurückgegeben, in diesem Fall 2 (wert in der 2. eckigen Klammer). Mit Ubound($Server,0) wird die anzahl der Dimensionen (anzahl der eckigen Klammern) zurückgegeben. In desem Fall also 2.
Zitat
Das hier ist auch out of space
GUICreate("Ping some Ass Baby", 250, 180 + (35 * (UBound($Servers) -1 )))
Ist nicht als eine einfache rechenaufgabe, in diesem Fall 180 + (35 * (4 - 1)) = 270.
Hat den Vorteil wenn du noch eine Server hinzufügst wird Fenster automatisch vergrössert, z.B:
Zeile 11 ändern in
und nach Zeile 24 einfügen
Dann werden 5 Server angezeigt und das Fenster ist automatisch 305 Pixel hoch.
Der Rest müsste sich jetzt von selbst erklären, oder ?
Zitat
Oder das 'ist ja kriminellCode;Erstell die Server-Labels For $i = 0 To UBound($Servers) - 1 GUICtrlCreateLabel($Servers[$i][0], 11, 55 + (35 * $i), 70) $Icons[$i] = GUICtrlCreateIcon("shell32.dll", 210, 115, 45 + (35 * $i),32,32) NextHier angekommen hab ich mich gefragt ob ich es mal mit viel Jacky probiere zu verstehen.
CodeFor $i = 0 To UBound($Servers) - 1 If Ping($Servers[$i][1],250) Then GUICtrlSetImage($Icons[$i], "shell32.dll",9) ; Online FileWrite($file, $Servers[$i][0] & " ist Online" & @CRLF) Else GUICtrlSetImage ($Icons[$i], "shell32.dll",10) ;Offline FileWrite($file, $Servers[$i][0] & " ist Offline" & @CRLF) EndIf NextAlso ich versteh nicht die Gedankenschritte. Wie kommst du auf ubound
auf die For Schleife, in welcher reihenfolge muß ich das ablaufen lassen gibt es ein leben ohne ProgrammierungDeshalb hab ich auch alles versucht zu dokumentieren.
Und überhaupt wie bringst du den Code unter den Button im Forum
Spoiler Zeigen?
Für den Spoiler musst du die Tags [ SPOILER ] und [ /SPOILER ] (ohne Leerzeichen) eingeben!