Filecopy Problem

  • Hallo AutoIT Gemeinde

    Ich bin absoluter newbie mit Autoit.

    Aber endlich kann ich meine Wetterstation automtisch auslesen.

    Das einzige Programm erlaubt nur Maus oder Tastertur Eingabe.

    Das script ist sehr einfach ich bin ja noch Anfänger.

    Nun zu mein Problem. Ich habe alle Elemente einzeln getestet.

    1 Station auslesen

    2 Daten auf meine NAS kopieren

    3 Rechner runterfahren.

    Alles kein Problem und Funktioniert prima.

    Aber zusammengefügt kopiert er die Datei nur wenn das "Rechner runterfahren" nicht aktive ist. Ist es aktive wird nicht kopiert aber der Rechner runtergefahren. Das kann ich mir nun überhaupt nicht erklären.

    Das Problem sitz aber bestimmt wieder vor dem Bildschirm.

    Das script befindet sich in der Autostart die Wartezeiten sind für 1 warten bis alles aktive ist 2 auslesen dauert immer eine unbestimmte zeit 3 hatte ich eingefügt wegen dem Filecopy aber eigentlich macht autoit doch alles nacheinander also müste es auch ohne 3 gehen

    ;warte 5min
    Sleep (300000)
    run ("DataRecorder.exe")
    Opt("WinWaitDelay",100)
    Opt("WinTitleMatchMode",4)
    Opt("WinDetectHiddenText",1)
    Opt("MouseCoordMode",0)
    WinWait("Thermo - Hygro Data Recorder","")
    If Not WinActive("Thermo - Hygro Data Recorder","") Then WinActivate("Thermo - Hygro Data Recorder","")
    WinWaitActive("Thermo - Hygro Data Recorder","")
    Send("{ALTDOWN}a{ALTUP}{ENTER}")
    ;warte 15min
    Sleep (900000)
    filecopy ("D:\Wetterdata\history.drf", "z:\history.drf" ,1)
    ;warte 5min
    Sleep (300000)
    Shutdown (1)

    gruß Ronny

    Einmal editiert, zuletzt von ropastudios (11. Mai 2009 um 18:18)

  • also das Einzige, was ich so vielleicht ändern würde, wäre die Opt's an den Anfang zu stellen.

    Spoiler anzeigen
    [autoit]

    Opt("WinWaitDelay",100)
    Opt("WinTitleMatchMode",4)
    Opt("WinDetectHiddenText",1)
    Opt("MouseCoordMode",0)
    run ("DataRecorder.exe")
    WinWait("Thermo - Hygro Data Recorder","")
    If Not WinActive("Thermo - Hygro Data Recorder","") Then WinActivate("Thermo - Hygro Data Recorder","")
    WinWaitActive("Thermo - Hygro Data Recorder","")
    Send("{ALTDOWN}a{ALTUP}{ENTER}")
    ;warte 15min
    Sleep (900000)
    filecopy ("D:\Wetterdata\history.drf", "z:\history.drf" ,1)
    ;warte 5min
    Sleep (300000)
    Shutdown (1)

    [/autoit]

    MfG Schnuffel

    "Sarkasmus ist die niedrigste Form des Witzes, aber die höchste Form der Intelligenz."
    Val McDermid

    ein paar Infos ...

    Wer mehr als "nur" Hilfe benötigt, kann sich gern im Forum "Programmieranfragen" an uns wenden. Wir helfen in allen Fällen, die die Forenregeln zulassen.

    Für schnelle Hilfe benötigen wir ein ! lauffähiges ! Script, dass wir als Demonstration des Problems testen können. Wer von uns erwartet ein Teilscript erstmal lauffähig zu bekommen, der hat
    1. keine wirkliche Not
    2. keinen Respekt vor Menschen die ihm in ihrer Freizeit Ihre Hilfe anbieten
    3. oder ist einfach nur faul und meint wir coden das für ihn

    In solchen Fällen erlaube ich mir, die Anfrage einfach zu ignorieren. ;)

  • Hallo ropastudios,

    müsste in dieser Zeile:

    Spoiler anzeigen
    [autoit][/autoit]

    Send("{ALTDOWN}a{ALTUP}{ENTER}")

    nicht anstelle des a (für abbrechen) ein o (für OK) stehen,

    mfg (Auto)Bert

  • Danke für die schnellen Antworten
    aber der ober Block "daten auslesen" funktioniert ohne Probleme
    Das Problem liegt hier


    ;warte 15min
    Sleep (900000)
    filecopy ("D:\Wetterdata\history.drf", "z:\history.drf" ,1)
    ;warte 5min
    Sleep (300000)
    Shutdown (1)

    Wenn ich shutdown rausnehme kopiert er die Datei wie gewollt.
    Wenn ich es drinne lasse kopiert er die Datei nicht sonder fährt den Rechner runter.

    Das is für mich völlig unlogisch. ?(

    Im Moment benutze ich als workaround robocopy zum kopieren und den WINDOWS shutdown befehl zu runterfahren.
    gruß Ronny

  • Hallo ropastudios,

    ich habe extra die PDF im Internet durchgeschaut und da war der Button zum bestätigen mit OK beschriftet, jetzt bin auch ich ?(

    mfg (Auto)Bert

  • Problem ist gelöst

    Es war die noch offene Rekoder SW.
    Die hat manchmal die Ausgabe Datei history.drf blockert.

    Ich habe noch einen zeile eingefügt die das Programm schliest.

    Danke für Eure Antworten
    Ronny