1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. Schnuecks

Beiträge von Schnuecks

  • Server Reboot Script

    • Schnuecks
    • 2. Dezember 2008 um 16:58

    Ich habe nochmal meine Pingfunktionen überarbeitet.

    Was meint ihr dazu?

    Spoiler anzeigen
    [autoit]

    Func _pingdown($srv)
    Local $Timer = TimerInit()
    Do
    $ping = Ping($srv, 250)
    Until Not $ping or TimerDiff($Timer)>300000

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

    If Not $ping Then
    _FileWriteLog($Log, $txt6 & $srv & $txt7 & @CRLF)
    Else
    _FileWriteLog($Log, $txt6 & $srv & $txt9 & @CRLF)
    EndIf

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

    EndFunc ;==>_pingdown

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

    Func _pingup($srv)
    Local $Timer = TimerInit()
    Do
    $ping = Ping($srv, 250)
    Until $ping or TimerDiff($Timer)>300000

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

    If $ping Then
    _FileWriteLog($Log, $txt6 & $srv & $txt8 & @CRLF)
    Else
    _FileWriteLog($Log, $txt6 & $srv & $txt9 & @CRLF)
    EndIf

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

    EndFunc ;==>_pingup

    [/autoit]

    Hier nochmal komplett

    Spoiler anzeigen
    [autoit]

    #cs ---------------------------------------------------------------------

    AutoIt Version: 3.2.10.0
    Author: Andreas Heß
    Copyright: Andreas Heß

    Script Function: Reboot mehrerer Server.
    Script Version: 1.9
    Script Date: 02.12.2008

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

    #ce ---------------------------------------------------------------------

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

    #NoTrayIcon
    #include <Date.au3>
    #include <File.au3>

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

    ;------------------------------------------------------------------------
    ;---------------------------- WICHTIGER - HINWEIS------------------------
    ;------------------------------------------------------------------------
    ;------------- Bereich in dem geändert werden darf - Anfang -------------
    ;------------------------------------------------------------------------
    $Domaene = "localdomain.de" ;Domäne
    $Benutzer = "serviceuser" ;ServiceUser
    $Kennwort = "servicepw" ;Kennwort des ServiceUsers
    $Passwort = "manuell" ;Kennwort für manuellen Start
    $timeout = "10" ;Zeit bis zum Neustart in Sekunden

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

    Global $aSrv[20] = ["test01","test02","test03","test04","","","","","","","","","","","","","","","",""]

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

    ;------------------------------------------------------------------------
    ;-------------- Bereich in dem geändert werden darf - Ende --------------
    ;------------------------------------------------------------------------
    ;---------------------------- WICHTIGER - HINWEIS -----------------------
    ;------------------------------------------------------------------------

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

    ;------------------------------------------------------------------------
    ;------------------ Variablen zum Reboot und zum Abbruch ----------------
    ;------------------------------------------------------------------------
    $reboot = @SystemDir & '\shutdown.exe -r -f -d p:1:1 -c "Sonderwartung" -t ' & $timeout & " -m \\"

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

    $cancel = @SystemDir & "\shutdown.exe -a -m \\"
    ;------------------------------------------------------------------------
    ;------------------------- Variablen für Logdatei -----------------------
    ;------------------------------------------------------------------------
    $Log = @ScriptDir & "\logs\Rebootlog vom " & _NowDate() & ".txt"
    If Not FileExists(@ScriptDir & "\logs\") Then DirCreate(@ScriptDir & "\logs\")
    $txt1 = "Automatischer Reboot "
    $txt2 = "Manueller Reboot "
    $txt3 = " wurde ausgelöst "
    $txt4 = " wurde abgebrochen "
    $txt5 = "von " & @UserName
    $txt6 = "Serverstatus "
    $txt7 = " ist OFFLINE "
    $txt8 = " ist ONLINE "
    $txt9 = " ist UNBEKANNT "
    ;------------------------------------------------------------------------
    ;------------------------------- Checkpoint 1 ---------------------------
    ;------------------------------------------------------------------------
    $sec_1 = @UserName
    $manuell = 0
    If $sec_1 = $Benutzer Then
    RunAsSet($Benutzer, $Domaene, $Kennwort)

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

    For $i = 0 To 19
    If $aSrv[$i] <> "" Then _reboot($aSrv[$i])
    Next

    For $i = 0 To 19
    If $aSrv[$i] <> "" Then _pingdown($aSrv[$i])
    Next

    For $i = 0 To 19
    If $aSrv[$i] <> "" Then _pingup($aSrv[$i])
    Next

    RunAsSet()
    Else
    ;------------------------------------------------------------------------
    ;------------------------------- Checkpoint 2 ---------------------------
    ;------------------------------------------------------------------------
    $sec_2 = InputBox("Warnung -- Warnung", "Reboot erfordert Passwort.", "", "*", 250, 50)
    $manuell = 1
    If $sec_2 = $Passwort Then
    RunAsSet($Benutzer, $Domaene, $Kennwort)

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

    For $i = 0 To 19
    If $aSrv[$i] <> "" Then _reboot($aSrv[$i])
    Next

    If MsgBox(4, "Cancel Reboot", "Soll der Reboot abgebrochen werden?", $timeout) = 6 Then
    For $i = 0 To 19
    If $aSrv[$i] <> "" Then _cancel($aSrv[$i])
    Next
    Exit
    EndIf

    For $i = 0 To 19
    If $aSrv[$i] <> "" Then _pingdown($aSrv[$i])
    Next

    For $i = 0 To 19
    If $aSrv[$i] <> "" Then _pingup($aSrv[$i])
    Next

    RunAsSet()
    EndIf
    EndIf

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

    ;------------------------------------------------------------------------
    ;---------------------- Abschnitt Funktionen - Beginn -------------------
    ;------------------------------------------------------------------------
    Func _pingdown($srv)
    Local $Timer = TimerInit()
    Do
    $ping = Ping($srv, 250)
    Until Not $ping or TimerDiff($Timer)>300000

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

    If Not $ping Then
    _FileWriteLog($Log, $txt6 & $srv & $txt7 & @CRLF)
    Else
    _FileWriteLog($Log, $txt6 & $srv & $txt9 & @CRLF)
    EndIf

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

    EndFunc ;==>_pingdown

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

    Func _pingup($srv)
    Local $Timer = TimerInit()
    Do
    $ping = Ping($srv, 250)
    Until $ping or TimerDiff($Timer)>300000

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

    If $ping Then
    _FileWriteLog($Log, $txt6 & $srv & $txt8 & @CRLF)
    Else
    _FileWriteLog($Log, $txt6 & $srv & $txt9 & @CRLF)
    EndIf

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

    EndFunc ;==>_pingup

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

    Func _reboot($srv)
    If $manuell = 1 Then
    Run($reboot & $srv, "", @SW_HIDE)
    _FileWriteLog($Log, $txt2 & $srv & $txt3 & $txt5 & @CRLF)
    Else
    Run($reboot & $srv, "", @SW_HIDE)
    _FileWriteLog($Log, $txt1 & $srv & $txt3 & $txt5 & @CRLF)
    EndIf
    EndFunc ;==>_reboot

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

    Func _cancel($srv)
    Run($cancel & $srv, "", @SW_HIDE)
    _FileWriteLog($Log, $txt2 & $srv & $txt4 & $txt5 & @CRLF)
    EndFunc ;==>_cancel

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

    ;------------------------------------------------------------------------
    ;----------------------- Abschnitt Funktionen - Ende --------------------
    ;------------------------------------------------------------------------

    [/autoit]


    LG

    Schnuecks

  • pc hängt beim doppelklick autoit, geschribens skrip funkt nicht

    • Schnuecks
    • 1. Dezember 2008 um 09:39

    Damit werden die Eingabegeräte während der Installation geblockt. Du kannst halt keine Tastatureingaben machen und die Maus ist gesperrt.

    Mit

    [autoit]

    BlockInput(1)
    BlockInput(0)

    [/autoit]


    kannst Du z. B. verhindern das Du während der Installation ein anderes Fenster anklickst.

    LG

    Schnuecks

  • pc hängt beim doppelklick autoit, geschribens skrip funkt nicht

    • Schnuecks
    • 30. November 2008 um 12:46
    [autoit]

    run("Laufwerk:\Ordner\7z460.exe")
    Winwait("7-Zip 4.60 Setup")
    ControlClick("7-Zip 4.60 Setup", "&Install", "Button2")
    Winwait("7-Zip 4.60 Setup","Click Finish")
    ControlClick("7-Zip 4.60 Setup", "&Finish", "Button2")

    [/autoit]

    Heisst deine Datei die Du starten möchtest 7z438.exe liegt das Script im selben Ordner wie die 7z438.exe, wenn nicht musst Du den Pfad angeben wo diese liegt.

    LG
    Schnuecks

  • pc hängt beim doppelklick autoit, geschribens skrip funkt nicht

    • Schnuecks
    • 30. November 2008 um 11:57

    Hi,

    falls Du Vista benutzt und die UAC nicht deaktiviert ist sollte dein Script so aussehen

    [autoit]

    #RequireAdmin
    run("7z460.exe")
    Winwait("7-Zip 4.60 Setup")
    ControlClick("7-Zip 4.60 Setup", "&Install", "Button2")
    Winwait("7-Zip 4.60 Setup","Click Finish")
    ControlClick("7-Zip 4.60 Setup", "&Finish", "Button2")

    [/autoit]


    ansonsten so

    [autoit]


    run("7z460.exe")
    Winwait("7-Zip 4.60 Setup")
    ControlClick("7-Zip 4.60 Setup", "&Install", "Button2")
    Winwait("7-Zip 4.60 Setup","Click Finish")
    ControlClick("7-Zip 4.60 Setup", "&Finish", "Button2")

    [/autoit]

    LG

    Schnuecks

  • Server Reboot Script

    • Schnuecks
    • 27. November 2008 um 22:30

    Vielen Dank für den Tipp.

    Allerdings erstellt er mir keinen Ordner für das Logfile. Kann ich ihm das irgendwo beibringen ohne die File.au3 verändern zu müssen?

    Also das er automatisch den Ordner erstellt sofern er nicht vorhanden ist. Im alten Script ging es ja mit Parameter ,9 das er den Ordner erstellt.

    Gut ich könnte ne Abfrage reinmachen aber das möchte ich ungern das muss anders gehen. ^^

    LG

    Schnuecks

  • Datei in C: suchen

    • Schnuecks
    • 26. November 2008 um 21:30

    Hab es jetzt so gelöst wie ich es wollte. Er soll alle Dateien mit dem Namen finden soll in der Ini schauen ob der Key vorhanden ist und wenn ja den Key ändern.

    Spoiler anzeigen
    [autoit]

    #include <Array.au3>
    Global $PathFound = ""
    Dim $Datei = "test.ini"
    Dim $Ordner = 'e:\'
    $re = _RecursiveFileSearch($Datei, $Ordner)
    If Not @error Then
    $splitted = StringSplit($re, '|')
    For $i = 1 To UBound($splitted) -1
    $ini = IniRead($splitted[$i],"Sektion","Key","")
    If not $ini = @error Then
    IniWrite($splitted[$i],"Sektion", "Key","Wert")
    EndIf
    Next
    Else
    MsgBox(16, 'ERROR', $re)
    EndIf

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

    ;--------------------------------------------------------------------------------------------------
    ; Funktion _RecursiveFileSearch($FILE, $SEARCHFOLDER)
    ;
    ; Beschreibung Sucht nach vorgegebener Datei in einem Ordner rekursiv
    ;
    ; Parameter $FILE: zu suchende Datei
    ; $SEARCHFOLDER: Ordner für Suchstart
    ;
    ; Rückgabe Erfolg: Pfad der gesuchten Datei
    ; @error = 0
    ; Fehler: 1-kein Dateiname / 2-kein Ordnername übergeben (3-beides); 4-Datei nicht vorhanden
    ; @error = 1
    ;
    ; Autor BugFix ([email='bugfix@autoit.de'][/email])
    ;--------------------------------------------------------------------------------------------------

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

    Func _RecursiveFileSearch($FILE, $SEARCHFOLDER)
    Dim $Fehler = 0
    If $FILE = "" Then
    SetError(1)
    $Fehler += 1
    EndIf
    If $SEARCHFOLDER = "" Then
    SetError(1)
    $Fehler += 2
    EndIf
    If @error Then Return $Fehler
    $FSO = ObjCreate("Scripting.FileSystemObject")
    ShowSubFolders($FSO.GetFolder($SEARCHFOLDER), $FILE)
    If $PathFound = "" Then
    SetError(1)
    $Fehler = 4
    Return $Fehler
    Else
    SetError(0)
    EndIf
    Return StringTrimRight($PathFound, 1)
    EndFunc ;==>_RecursiveFileSearch
    Func ShowSubFolders($Folder, $FILE)
    For $Subfolder In $Folder.SubFolders
    If FileExists($Subfolder.Path & "\" & $FILE) Then
    $PathFound &= $Subfolder.Path & "\" & $FILE & '|'
    ;~ ExitLoop
    EndIf
    ShowSubFolders($Subfolder, $FILE)
    Next
    EndFunc ;==>ShowSubFolders

    [/autoit]

    Vielen lieben Dank an Mega an dieser Stelle ^^

  • Datei in C: suchen

    • Schnuecks
    • 26. November 2008 um 14:57

    Mit einer For NExt Schleife ist soweit klar. Wie bekomme ich das was ich mit _ArrayDisplay angezeigt bekomme in ein Array welches ich dann auslesen kann?

    Sorry für die Blödfragen.

    LG

    Schnuecks

  • Datei in C: suchen

    • Schnuecks
    • 26. November 2008 um 13:01

    Das funktioniert schon mal bestens.

    Er findet schonmal alle das klappt. Da es sich um INI Dateien handel wollte ich IniWrite benutzen.

    Wie kann ich ihm sagen das er in allen gefundenen Dateien die Änderung durchführt?

    Bei einer wärs ja kein Problem mit Arrays hab ichs noch nicht so ^^


    LG

    Schnuecks

  • Datei in C: suchen

    • Schnuecks
    • 26. November 2008 um 10:06

    Habe das Skript auch getestet und es funktioniert einwandfrei.

    Ich würde nur gerne mehre Dateien mit dem gleichen Namen suchen was muss ichdann an dem Skript verändern.

    Also Bsp.: Ich würde gerne das er komplett C:\ durchsucht und mir alle test.txt anzeigt die es gibt.

    Problem ist folgendes, bei uns in der Firma gibt es ein Programm in dem ein INI-Eintrag geändert werden muss. Allerdings legt das Programm bei der Installation verschiedene Ordner an. Manchmal sind diese INI's Gott weis warum irgendwo auf der Platte. Dort müsste aber nun ein Pfad geändert werden deshalb wäre es schön zu wissen was ich dort ändern muss.

    LG

    Schnuecks

  • automatisch backups erstellen über mysqldumper

    • Schnuecks
    • 13. November 2008 um 10:04

    Brauchst Du ja auch nicht ^^

    Du öffnest die pl mit nem beliebigen Editor, und änderst in der crondump.pl einfach Zeile 20 im Originalscript.

    Vorher: my $absolute_path_of_configdir="";

    Nachher: my $absolute_path_of_configdir="/var/www/xyz/httpdocs/msd/work/config/";


    Wie gesagt schick mir eine PN ich richte Dir das alles ein dauert maximal ne 1/4 Stunde.
    Hast Du nen root oder vserver oder ein Hostingpaket?

    LG

    Schnuecks

  • automatisch backups erstellen über mysqldumper

    • Schnuecks
    • 13. November 2008 um 08:22

    Also einfacher als mit den Cronjobs kannst Du keine Backups erstellen.
    In dieser Datei crondump.pl muss lediglich der Rootpfad eingegeben werden.
    Dann kopierst du das ganze nach cgi-bin und das wars.

    Je nachdem was Du für eine Serversystem hast kannst Du die crontab anpassen und dort das Script eintragen.
    Oder halt einen cronjob über die Konfigurationssoftware (ispCP,Plesk,Webmin etc.) die Du auf deinem Server hast anlegen.

    Wenn Du ein normales Hostingangebot hast also ohne root-zugang empfehle ich dir einen cronjob-service z.B. cronjob.de.
    Die sind kostenlos brauchst dich bloss registrieren und dann kannst Du deine cronjobs ganz einfach anlegen.

    Die rufen dann automatisiert die Befehlszeile auf z.B:
    http://www.deine-domain.de/cgi-bin/crondu…dumper.conf.php

    Kannst mir auch ne PN schicken und ich richte Dir den ganzen Kram ein. Entweder auf deinem Server oder bei dem Dienst wie Du willst.
    Mit AutoIt ging es natürlich dann auch aber warum sich so einen Umstand mchen, wenn es das Programm schon hergibt. Man muss das
    Rad ja nicht immer neu erfinden.

    LG

    Schnuecks

  • Server Reboot Script

    • Schnuecks
    • 11. November 2008 um 07:47

    Manchmal steht man wie der Ochs vorm Berg, danke ^^

    Hätten wir das auch.

    Was meint ihr zu den Funktionen, könnte man die noch irgendwie verbessern bzw. optimieren?


    LG

    Schnuecks

  • Server Reboot Script

    • Schnuecks
    • 10. November 2008 um 12:17

    Das Script läuft ja soweit, Was mich halt noch so ein bisschen stört ist die Logausgabe.

    Dort steht bei den Einträgen immer die gleiche Zeit. ist es möglich das so zu ändern das die aktuelle Zeit dort steht.
    Ich benutze dazu aus der Date.au3 die Funktion _NowTime()

    Auszug:
    Manueller Reboot Test01 wurde ausgelöst am 10.11.2008 um 12:08:27 von Test
    Serverstatus Test01 ist OFFLINE am 10.11.2008 um 12:08:27 von Test
    Serverstatus Test01 ist ONLINE am 10.11.2008 um 12:08:27 von Test


    LG

    Schnuecks

  • Server Reboot Script

    • Schnuecks
    • 7. November 2008 um 13:00

    Ich habe das komplette Script hier nochmal soweit funktioniert es jetzt wie es soll.

    Es wäre nett wenn ihr es auch mal testen könntet und mir evtl. nochmal Feedback gebt was ich verbessern oder ändern könnte.

    Spoiler anzeigen
    [autoit]

    #cs ---------------------------------------------------------------------

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

    AutoIt Version: 3.2.10.0
    Author: Andreas Heß
    Copyright: Andreas Heß

    Script Function: Reboot mehrerer Server.
    Script Version: 1.7
    Script Date: 03.09.2008

    #ce ---------------------------------------------------------------------

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

    #NoTrayIcon
    #include <Date.au3>

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

    $Domaene = "local.localdomain.com" ;Domäne
    $Benutzer = "test" ;User
    $Kennwort = "test" ;Kennwort
    $Passwort = "test" ;Kennwort für manuellen Start
    $timeout = "10" ;Zeit bis zum Neustart in Sekunden

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

    Global $aSrv[20] = ["test01","test02","test03","test04","test05","","","","","","","","","","","","","","",""]

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

    $reboot = @SystemDir & "\shutdown.exe -r -f -t " & $timeout & " -m \\"
    $cancel = @SystemDir & "\shutdown.exe -a -m \\"

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

    $Log = @ScriptDir & "\logs\Rebootlog vom " & _NowDate() & ".txt"
    $txt1 = "Automatischer Reboot "
    $txt2 = "Manueller Reboot "
    $txt3 = " wurde ausgelöst "
    $txt4 = " wurde abgebrochen "
    $txt5 = "am " & _NowDate() & " um " & _NowTime() & " von " & @UserName
    $txt6 = "Serverstatus "
    $txt7 = " OFFLINE "
    $txt8 = " ONLINE "
    ;------------------------------------------------------------------------
    ;------------------------------- Checkpoint 1 ---------------------------
    ;------------------------------------------------------------------------
    $sec_1 = @UserName
    $manuell = 0
    If $sec_1 = $Benutzer Then
    RunAsSet($Benutzer, $Domaene, $Kennwort)

    For $i = 0 To 19
    If $aSrv[$i] <> "" Then _reboot($aSrv[$i])
    Next

    For $i = 0 To 19
    If $aSrv[$i] <> "" Then _pingdown($aSrv[$i])
    Next

    For $i = 0 To 19
    If $aSrv[$i] <> "" Then _pingup($aSrv[$i])
    Next

    RunAsSet()
    Else
    ;------------------------------------------------------------------------
    ;------------------------------- Checkpoint 2 ---------------------------
    ;------------------------------------------------------------------------
    $sec_2 = InputBox("Warnung -- Warnung", "Reboot erfordert Passwort.", "", "*", 250, 50)
    $manuell = 1
    If $sec_2 = $Passwort Then
    RunAsSet($Benutzer, $Domaene, $Kennwort)

    For $i = 0 To 19
    If $aSrv[$i] <> "" Then _reboot($aSrv[$i])
    Next

    For $i = 0 To 19
    If $aSrv[$i] <> "" Then _pingdown($aSrv[$i])
    Next

    For $i = 0 To 19
    If $aSrv[$i] <> "" Then _pingup($aSrv[$i])
    Next

    RunAsSet()
    EndIf
    EndIf

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

    ;------------------------------------------------------------------------
    ;---------------------- Abschnitt Funktionen - Beginn -------------------
    ;------------------------------------------------------------------------
    Func _pingdown($srv)
    Local $hFile
    Do
    $ping = Ping($srv,250)
    Until $ping = 0
    $hFile = FileOpen($Log, 9)
    FileWrite($hFile, $txt6 & $srv & $txt7 & $txt5 & @CRLF)
    FileClose($hFile)
    EndFunc ;==>_pingdown

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

    Func _pingup($srv)
    Local $hFile
    Do
    $ping = Ping($srv,250)
    Until $ping = 1
    $hFile = FileOpen($Log, 9)
    FileWrite($hFile, $txt6 & $srv & $txt8 & $txt5 & @CRLF)
    FileClose($hFile)
    EndFunc ;==>_pingup

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

    Func _reboot($srv)
    Local $hFile
    If $manuell = 1 Then
    Run($reboot & $srv, "", @SW_HIDE)
    $hFile = FileOpen($Log, 9)
    FileWrite($hFile, $txt2 & $srv & $txt3 & $txt5 & @CRLF)
    FileClose($hFile)
    Else
    Run($reboot & $srv, "", @SW_HIDE)
    $hFile = FileOpen($Log, 9)
    FileWrite($hFile, $txt1 & $srv & $txt3 & $txt5 & @CRLF)
    FileClose($hFile)
    EndIf
    EndFunc ;==>_reboot

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

    #cs Erstmal deaktiviert
    Func _cancel($srv)
    Local $hFile
    Run($cancel & $srv, "", @SW_HIDE)
    $hFile = FileOpen($Log, 9)
    FileWrite($hFile, $txt2 & $srv & $txt4 & $txt5 & @CRLF)
    FileClose($hFile)
    EndFunc ;==>_cancel
    #ce

    [/autoit]

    Die Idee mit der GUI ist auch interessant werde sie evtl. nochmal aufgreifen.


    LG

    Schnuecks

  • Server Reboot Script

    • Schnuecks
    • 6. November 2008 um 13:14

    So jetzt bin ich endlich mal dazu gekommen damit weiterzumachen.

    Spoiler anzeigen
    [autoit]

    Func _pingcheck($srv)
    Local $ping = Ping($srv)
    Local $break = 0
    If $ping > 0 Then
    Do
    $ping = Ping($srv)
    $break = $break + 1
    Until $ping = 0 ;or $break = 500
    $hFile = FileOpen($Log, 9)
    FileWrite($hFile, $txt6 & $srv & @CRLF)
    FileClose($hFile)
    EndIf
    If $ping = 0 Then
    Do
    $ping = Ping($srv)
    $break = $break + 1
    Until $ping > 0 ;or $break = 500
    $hFile = FileOpen($Log, 9)
    FileWrite($hFile, $txt7 & $srv & @CRLF)
    FileClose($hFile)
    EndIf
    EndFunc ;==>_pingcheck

    [/autoit]

    Wie ist Eure Meinung dazu funktionieren tut es soweit weis nur nicht ob es die optimale Lösung ist die ich suche.

    Das $break soll nur eine Endlosschleife vermeiden und ist zu Testzwecken drin.

    Edit: Irgendwie läuft es doch nicht so wie ich dachte.


    LG

    Schnuecks

  • Server Reboot Script

    • Schnuecks
    • 8. September 2008 um 20:57

    Ja ich hätte das schon gerne direkt nach dem Reboot, wär mir am liebsten.

    Muss ich mal sehen wie ich das mit dem Ping hinbekomme, werde mich die Tage mal dransetzen.


    LG und vielen Dank schonmal

    Schnuecks

  • Server Reboot Script

    • Schnuecks
    • 8. September 2008 um 16:37

    Das mit der GUI ist nicht schlecht hatte ich mir auch schon überlegt. Aber dann erstmal weggelassen.
    Allerdings sollte es im automatischen Modus keine geben. Macht ja auch keinen Sinn.

    Mit der Ping-Abfrage ist so eine Sache. Kann man es so verwirklichen das er wartet bis der Ping weg ist und dann wartet bis der Ping wieder da ist.
    Weis is Kauderwelsch aber so stell ich mir das vor.

    LG

    Schnuecks

  • Server Reboot Script

    • Schnuecks
    • 8. September 2008 um 09:44

    So meine lieben,

    das Script funktioniert soweit 1a in der Testumgebung. Wie ich ja oben geschrieben habe soll es wenn der Neustart durchgeführt wurde, mir eine Rückmeldung geben ob der Neustart sauber durchgeführt wurde.

    Meine Ideen dazu wären:

    a.) Evtl. eine Ping oder SNMP Abfrage ob der Server auch wieder da ist.
    b.) Eine zweite Datei die auf dem Server vor dem Neustart installiert wird und dann nachdem Neustart ausgeführt wird um Rückmeldung zu geben.
    c.) Ein Registrykey der gesetzt wird und dann wieder ausgelesen wird.

    Wenn ihr noch Ideen hättet wäre nicht schlecht.

    LG

    Schnuecks

  • Server Reboot Script

    • Schnuecks
    • 5. September 2008 um 10:02

    Wenn jetzt dumm rüberkommt, sorry.

    [autoit]

    FileOpen("text.txt",9) ;öffnet diese Datei. Wird einfach nur geöffnet
    FileWrite("text.txt", "irgendwas") ;beschreibt diese Datei.
    FileClose("text.txt") ;schließt diese wieder. Wird einfach geschlossen

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

    $hFile = FileOpen("text.txt",9) ;öffnet diese Datei. Stellt Verbindung mit FileWrite und Close her.
    FileWrite($hFile, "irgendwas") ;beschreibt diese Datei
    FileClose($hFile) ;schließt diese wieder. Trennt Verbindung zwischen FileWrite und Close.

    [/autoit]

    Ist das so gemeint, ich versuch es nur zu verstehen.

    LG

    Schnuecks

  • Server Reboot Script

    • Schnuecks
    • 5. September 2008 um 09:16

    Nur um es richtig zu verstehen.

    die 9 kann ich ja im FileOpen auch schon mitgeben.

    Wenn ich es nur mit FileOpen ,9 machen würde wo wäre der direkte Unterschied.

    [autoit]


    FileOpen($Datei ,9)
    FileWrite($Datei,"irgendwas")
    FileClose($Datei)

    [/autoit]

    Schnuecks

    [autoit]


    $hFile = FileOpen($Datei ,9)
    FileWrite($hFile,"irgendwas")
    FileClose($hFile)

    [/autoit]

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™