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. Springstil

Beiträge von Springstil

  • Wenn Programm nicht gestartet dann abfrage ob starten oder nicht

    • Springstil
    • 19. Juni 2018 um 11:55

    Aber das bekomme ich nur durch eine if abfrage ausgewertet richtig ?

  • Wenn Programm nicht gestartet dann abfrage ob starten oder nicht

    • Springstil
    • 19. Juni 2018 um 11:39

    Das bekomme ich ja auch hin, nur bekomme ich es nicht gebacken bei Ja oder Nein das script weiter zu führen oder abzuschalten, da ich ja vorher schon ne if abfrage gestartet habe. So wie ich Google verstanden habe muss ich die msgbox mit rückgabewert mit ner If abfrage behandeln. also wenn 1 dann das oder 2 dann das

  • Wenn Programm nicht gestartet dann abfrage ob starten oder nicht

    • Springstil
    • 19. Juni 2018 um 11:18

    Also

    @alpines

    ja so ungefähr soll es aussehen nur das er nach 30 Sekunden Kilas starten soll (wenn man nicht vorher ja drückt) und bei Nein eben das Script beendet bis man es wieder einschaltet. Und die MSGbox soll auch nur erscheinen wenn Kilas NICHT gestartet ist.

    @Oscar

    Sieht genial aus. Bisl schwer für mich zu verstehen wie das funktioniert da ich nicht alt so viel Ahnung habe. Habe aber denke ich 90% Des Scripts mittlerweile verstanden. Nur Möchte ich genau das anderes herum haben. Sprich er soll beim Timeout das Programm auch starten nur bei Nein soll er das Script schließen. Dann soll er nach 30 Sekunden wieder Checken ob Kilas läuft. Wenn ja 30 Sek warten, wenn nein starten und die abfrage anzeigen. Ich Verstehe aber nicht so recht wie ich dem Timeout ne Funktion zuweisen kann. Das ganze ist ja nicht mit msgbox geregelt oder ?

  • Wenn Programm nicht gestartet dann abfrage ob starten oder nicht

    • Springstil
    • 19. Juni 2018 um 09:05

    Ich möchte das nicht programmieren lassen, will es ja auch verstehen und ein Erfolgs Ergebnis haben :D

    Im Prinzip soll er alle 30 sek checken läuft oder läuft nicht und wenn nicht die Abfrage starten soll es gestartet werden oder nicht. Beim time out soll er starten. Ich bin grade am Handy ich schau mir das gleich mal genauer an erst mal vielen Dank für die Hilfe Stellungen

  • Wenn Programm nicht gestartet dann abfrage ob starten oder nicht

    • Springstil
    • 18. Juni 2018 um 16:42

    Das habe ich soweit schon verstanden mit der msgbox. Nur weiß ich nicht wie ich das in dem script anstellen soll das er bei ja weiter macht und bei nein das script schließt. Habe mal gegoogelt gehabt, und da ist die rede von ner if abfrage. Aber die habe ich ja schon vorher am laufen

  • Wenn Programm nicht gestartet dann abfrage ob starten oder nicht

    • Springstil
    • 18. Juni 2018 um 16:23

    Hallo zusammen,

    Ich habe folgendes Script geschrieben:

    Code
    While 1
    
    
    
    if ProcessExists("KILAS_Monitor.exe") Then
    
    Else
    
    run("K:\KILAS_Monitor.exe SUR_Monitor.cfg", "k:\")
    
    sleep (1800)
    
    WinActivate ("KILAS","Gasper - KILAS MONITOR")
    
    winwaitactive("KILAS","Gasper - KILAS MONITOR")
    
    Sleep(500)
    
    ControlClick("KILAS","","[CLASS:ThunderRT6OptionButton; INSTANCE:2]")
    
    Sleep (3000)
    
    EndIf
    
    WEnd
    Alles anzeigen

    Das funktioniert soweit auch gut. Nur hätte ich es gern ein wenig umgebaut:

    Und zwar wenn der Prozess nicht gestartet ist, soll er eine Abfrage starten mit ja oder nein. Wenn Ja gedrückt wird soll er das Programm starten, bei nein soll er das Script schließen. Die schleife mit dem Checken ob es läuft oder nicht soll allerdings bestehen bleiben. Jetzt kommt noch das ABER :P er soll 30 Sekunden warten bei der abfrage. Wenn dann noch nicht zwischen ja oder nein gewählt wurde soll er automatisch Ja drücken! Ich verstehe aber nicht wie ich das anstellen soll. Hoffe ihr könnt mir helfen :)

  • Frage zu WinSetOnTop

    • Springstil
    • 25. Mai 2018 um 10:41

    Ah okay. Also setze ich einmal den ontop Befehl, der dann so lange aktiv bis das Script geschlossen wird. Also jedes mal wenn das Fenster mit dem Titel aufkommt wird es auch on top gesetzt egal wie weit das Script voran gescheiten ist

  • Frage zu WinSetOnTop

    • Springstil
    • 25. Mai 2018 um 10:34

    Also den Befehl on top setzten nach den Klicks dann das winwaitactive warten bis es wieder da ist und wieder on top schalten?

  • Frage zu WinSetOnTop

    • Springstil
    • 25. Mai 2018 um 10:21

    Also das Programm startet fängt an und friert mit keine Rückmeldung ein. Soweit ja nicht schlimm wenn er fertig ist, ist das mit der keine Rückmeldung ja auch weg. Setzt er das Fenster dann wieder auf aktiv mit dem Befehl? Also wartet er so lange bis er das Fenster wieder findet und setzt es aktiv bis es sich schließt? Ich hoffe es ist verständlich gestellt die Frage :x weiß grade nicht wie ich mich anders ausdrücken soll ? dann wäre ja der fenstertitel mit keine Rückmeldung egal oder?

  • Frage zu WinSetOnTop

    • Springstil
    • 25. Mai 2018 um 10:14

    Hey Roger,

    Ich habe dafür leider zu wenig Ahnung wie ich das dann mit ner comando Zeile machen soll. Das Tool nutzen wir auch so immer wenn wir das händisch machen daher kam die Idee das darüber zu steuern.

    Es musste nur schnell eine Lösung erst einmal her, da wir am Dienstag Opfer eines crypto trojaner geworden sind und die Datenbank einige Tage alt war die wir wieder herstellen konnten.

    Bin aber gerne für Vorschläge offen wie ich das anders lösen kann.

  • Frage zu WinSetOnTop

    • Springstil
    • 25. Mai 2018 um 08:12

    Hallo zusammen,

    Ich habe mir ein Script zusammen gebastelt, was einfach ein paar Klicks ausführt.

    Spoiler anzeigen

    #include <Date.au3>


    $dateiname = "DB_" & @MDAY & "." & @MON & "." & @YEAR

    $quelle = "D:\Backup_Kilas\"

    $zwichenspeicher = "D:\Backup_Kilas\"

    $speicherwolke = "/DB_SICHERUNG/"


    Run("D:\KILAS\SQL Server TOOL.exe")

    Sleep(3000)

    WinActivate("S+R SQL Server Manager")

    Sleep(1000)

    ControlClick("S+R SQL Server Manager", "", "[CLASS:ThunderRT6CommandButton; INSTANCE:8]")

    WinWaitActive("Datenbank SICHERN")

    Sleep(2000)

    ControlClick("Datenbank SICHERN", "", "[CLASS:Button; INSTANCE:1]")

    WinWaitActive("SQL_Server_TOOL")

    ControlClick("Datenbank SICHERN", "", "[CLASS:Button; INSTANCE:1]")

    WinActivate("S+R SQL Server Manager")

    Sleep(1000)

    ControlClick("S+R SQL Server Manager", "", "[CLASS:ThunderRT6CommandButton; INSTANCE:4]")

    FileMove("D:\Backup_Kilas\KILAS.bak", "D:\Backup_Kilas\" & $dateiname & ".bak")

    Sleep(300)

    RunWait("C:\Program Files\WinRAR\WinRAR.exe a -r " & $zwichenspeicher & $dateiname & ".rar " & $zwichenspeicher & $dateiname & ".bak")

    $cmd1 = 'C:\Winscp\winscp.com /Command "open sftp://XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/" "put ' & $zwichenspeicher & $dateiname & ".rar " & $speicherwolke & '" exit'

    RunWait(@ComSpec & " /c " & $cmd1)

    FileMove("D:\Backup_Kilas\" & $dateiname & ".rar", "T:\BackupKilas\Backup_Day\" & $dateiname & ".rar")

    Es geht halt einfach hin, und öffnet den SQL Server Manager und klickt einfach paar mal zum sichern der Datenbank. Danach wird es gepackt und in den FTP geschoben. Funktioniert auch soweit gut :) ABER da ich ja mit ControlClick arbeite MUSS das Fenster solange er die DB Sichert im Vordergrund bleiben... Jetzt habe ich mal gegoogelt und die Funktion WinSetOnTop gefunden.

    Nur habe ich da eine Frage zu:

    Unsere Datenbank ist ca 21 GB groß. Sobald man auf Sichern Klickt zeigt das Fenster nach 2 Sek an das er keine Rückmeldung mehr hat. Ist das ein Problem für WinSetOnTop ? Und ist das auch die Funktion die das fenster solange offen bzw im Vordergrund lässt bis es beendet wird?

    PS: Ja ich sehe grade das der erste Move befehl eigendlich fürn arsch ist :D

  • " in der Command Lline benutzbar ?

    • Springstil
    • 16. Mai 2018 um 12:11

    Ich muss mir das mit dem StringFormat noch mal genau durchlesen für das nächste Projekt was ich evl dann machen werde.

    Ich bin eher so einer der Lerning by Doing fabriziert :P aber mein Fertiger Code sieht so aus:

    $CMD1 = "C:\Winscp\winscp.com /Command ""open sftp://XX:XX@XXX"" ""put " & $zwichenspeicher & $DateiName & ".rar " & $speicherwolke &""" exit" 

    RunWait(@ComSpec & " /c " & $CMD1 )

    Zumindest Funktioniert es so :D

  • " in der Command Lline benutzbar ?

    • Springstil
    • 15. Mai 2018 um 12:18

    Aaahhh jetzt hat es klick gemacht! Danke hab mir das dann mal in der Box darstellen lassen und es dann hinbekommen und auch verstanden. Vielen Dank :)

  • " in der Command Lline benutzbar ?

    • Springstil
    • 15. Mai 2018 um 11:56

    Ah okay das habe ich in der Theorie hinbekommen. Nur verstehe ich noch nicht so ganz wie ich dann die Variable da mit einbauen sollte.

    Code
    ""put C:\" & $DateiName & " "" 

    kann ja so nicht richtig sein... Sry für die Blöden Fragen

  • " in der Command Lline benutzbar ?

    • Springstil
    • 15. Mai 2018 um 11:35

    Kannst du mir das evl. etwas genauer erklären was du mit "" meinst ? Soll das heißen das ich jedes Gänsefüßschen 2 mal setzen soll? Also überall da wo eins steht was gebraucht wird ?

  • " in der Command Lline benutzbar ?

    • Springstil
    • 15. Mai 2018 um 11:27

    Durch das Apostroph am Anfang und am ende werden die Anführungszeichen doch nicht mehr als String benutzt somit würde der Befehl doch mit "put C:\" enden und auch so eingetragen werden ?

  • " in der Command Lline benutzbar ?

    • Springstil
    • 15. Mai 2018 um 11:11

    Danke für den Tipp :) Hat soweit auch geklappt was ich vorhabe.

    Das mit den StringFormat finde ich sehr Kompliziert ehrlich gesagt :o mein Problem was ich jetzt habe ist die Variable mit einzubinden.

    Code
    #include <Date.au3>;
    
    ; DateiName steht für den Namen den das Archiv später hat!
    ; Quelle ist halt die Quelle von Wo er etwas nehmen und packen soll!
    $DateiName = "DB_" & @MDAY & "." & @MON & "." & @YEAR
    $Quelle = "E:\Scripte2\"
    ;Speicherort (Also Festplatte) bitte bei :\ ändern! Standart ist C angegeben also nach C:\Program Files\WinRAR\WinRAR.exe a -r kommt die Festplatte
    RunWait ("C:\Program Files\WinRAR\WinRAR.exe a -r C:\" & $DateiName & ".rar" , $quelle)
    ;                                                  ----
    
    
    $CMD1 = 'C:\Winscp\winscp.com /Command "open sftp://XXX:XXX@XXX/" "put C:\test.txt /test/"'
    
    RunWait(@ComSpec & " /c " & $CMD1 )
    Alles anzeigen

    So funktioniert es wie es soll. ABER jeden Tag ändert sich ja das Datum... Wie bekomme ich also die Variable $DateiName bei Put C:\ **** rein ?

    Mein Code sieht bestimmt beschissen aus xD Aber ich komme wenigstens einigermaßen klar :X

  • " in der Command Lline benutzbar ?

    • Springstil
    • 15. Mai 2018 um 08:30

    Die Überschrift ist vielleicht ein wenig Kacke .. Ich weiß allerdings nicht wie ich das richtig nennen soll :P


    Mein Problem ist das ich keine sftp Verbindung mit Autoit hergestellt bekomme.. Habe div. Scripts probiert und bekomme einfach keine Verbindung zu Stande. Nun dachte ich mir "Nimmste einfach winSCP". Pustekuchen :D

    Kurz erklärt ich will etwas Automatisch Packen lassen und im nächsten schritt möchte ich es hochladen.

    Nun ist es aber so das der WinSCP befehl so aussieht:

    Code
    winscp.com /command "open sftp://Benutzer:PASS@SERVER.de/" "put test.txt /test/" "exit" 

    Nur hab ich das Problem das Autoit die " nicht mit in die Line reinschreibt? Ich führe das mit runwait aus.


    Mein Script besteht zur zeit nur daraus :P

    Code
    $DateiName = "DB_" & @MDAY & "." & @MON & "." & @YEAR
    $Quelle = "E:\Test\"
    RunWait ("C:\Program Files\WinRAR\WinRAR.exe a -r C:\" & $DateiName & ".rar" , $quelle)

    Aber das wäre auch mein nächstes Problem. Wenn der Pack Job erledigt ist, soll er normal die Datei die er gepackt hat Hochladen. Diese würde ich gern mit Datum versehen damit ich weiß welche Version das ganze ist. Vielleicht habt ihr ja noch ne Idee wie ich die Variable mit in den sftp Upload bekomme. Ich bin nicht so recht Firm in Autoit und probiere mich durch, nur stehe ich grade ziemlich auf dem schlauch.

    Schon mal Vielen Dank :)

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™