Alle 10 Min Strg+S bis ich das Programm beende

  • Hey zusammen!
    ich habe ein Problem, was ich selbst nicht lösen kann, weil ich mich nicht auskenne.

    Für jemand der sich auskennt ist die Erstellung dieses Scripts eine Sache von 5 min.

    Ich würde gerne ein Script erstellen, welches alle 10 min die Tastenkombination strg+s automatisch drückt und erst damit aufhört, wenn ich die exe oder das script wieder beende.

    Kann mit jemand dieses Script erstellen?

    Fragen gerne an mich

    Bitte um Hilfe ;( ;( ;(

    2 Mal editiert, zuletzt von Grau2 (12. Juni 2010 um 18:20)

  • ungetestet

    [autoit]

    $i = 0
    Do
    tastendruck()
    $i = $i + 1
    Until $i = 1

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

    Func tastendruck()
    Send('{CTRLDOWN}')
    Send('s')
    Send('{CTRLUP}')
    Sleep(600000)
    tastendruck()
    EndFunc

    [/autoit]


    aber, was willst damit?

  • Danke dir für deine Schnelle hilfe!!! :thumbup: :thumbup: :thumbup: :thumbup:

    Kannst du mir noch sagen wie ich dass Script jetzt am besten starte, damit es auch läuft bis ich es beende??

    Solch ich eine .exe daraus machen?

    MFG Grau2

  • ich möchte gerne dass es ein spiel alle 10 min automatisch speichert über die tastenkomination strg+s

  • ich weiß nicht was du unter bot verstehst.

    ich will es dir erklären: ich möchte dass automatisch waärend eines spieles immer wieder alle 10 minuten das spiel gespeichert wird, weil ich dass immer vergess.

    es soll also erst aufhören die Kombination zu drücken wenn ich die exe wieder beende!

    MFG Grau2

  • versuch ma so, wie ich es gemacht habe, funkt auf jeden fall bei mir
    also einfach in ne .au3 datei packen und starten
    hier haste

    Einmal editiert, zuletzt von noir (10. Juni 2010 um 23:23)

  • liegt denke ich ma an

    [autoit]

    Sleep(600000)

    [/autoit]


    bei mir funktionierts auf jeden fall
    //hab in den verherigen ne exe

  • ok dass kann natürlich sein

    wie hast du getestet ob des funtioniert??

    mags nur bei mir auch testen,, hab die zeit schon runtergestellt ( nur zum test)

  • ich hab auf 10 sec gemacht und dann halt gestartet, dann was ab script geändert, und nach 10 sec war die diskette grau (wurd also gespeichert)

  • warte, des hab ich nicht verstanden. wenn du startest wird alle 10 sec strg+s ativiert, richtig??
    wo hast du dann was geändert und welche diskette wurde grau???

    tut mir leid wenn ich dich grad nerv aber ich mag des hatl auch verstehen

  • also ich hab meine exe (ausm vorvorherigen post) gestartet, dann in scite halt iwas dahintergetippt, dann wird die diskette ja bunt, also dass es noch net gespeichert wurde, und nach 10 sec war diese dann grau, was bedeutet, dass gespeichert wurde.
    in der exe, von der ich gerade gespriochen hab, ist das auf 10 min, wie du es wolltest
    also ja: alle 10 min ( in der exe) wird strg+s gedrückt

  • ah ok.
    ich teste des jetzt mal im spiel aus und melde mich morgen noch einmal wenn ich es nicht hinbekommen habe.
    wäre lieb wenn du noch mal schaust morgen, was ich noch gepostet hab.

    Danke schon mal für deine Hilfe

    MFG Grau2

  • Ungetestet, da ich grad im Forum Editor schreibe :D

    [autoit]


    $Titel = "Mein Game" ;-> Dein Game Titel. (Vom Fenster) So das beim wechseln trotzdem das Game gesichert wird.
    $Key = "^s" ;-> Strg+S
    $Sleep = "10" ;-> Minuten!
    $ExitKey = "^e" ;-> Strg+E
    $Control = "" ;-> Kannst du noch ändern, wenn du per Au3Info die Control Bezeichnung findest. Sonst so lassen.

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

    HotKeySet($ExitKey, "MyExit")

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

    While True
    ControlSend($Titel, "", $Control, $Key)
    Sleep($Sleep * 60 * 1000)
    WEnd

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

    Func MyExit()
    Exit
    EndFunc

    [/autoit]
    • Offizieller Beitrag

    Hi,
    starte dein Spiel mit diesem Skript, dann wird automatisch die erzeugte Prozeß-ID (PID) für den Zugriff genutzt und beim Beenden des Spieles wird auch das Skript mitbeendet.

    Spoiler anzeigen
    [autoit]

    Local $GamePath = 'Pfad deines Spiels'
    Local $PID = Run($GamePath)

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

    Local $hWnd
    Do
    $hWnd = WinGetHandle($PID)
    Until IsHWnd($hWnd)

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

    Local $timer = TimerInit()

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

    While ProcessExists($PID)
    If TimerDiff($timer) > 10*60*1000 Then
    ControlSend($hWnd, '', '', '^s')
    $timer = TimerInit()
    EndIf
    Sleep(1000)
    WEnd

    [/autoit]
  • Ich bins wieder.

    Lieber Sen.

    ich hab dein Script ausprobiert, es funktioniert im spiel, drückt aber nur die "s" Taste und nicht auch noch die strg Taste. Die Strg Taste muss gehalten bleiben bis die s Taste gedrückt wurde und dann kann man auch die strg Taste los lassen

    Kannst du mir da auch noch weiterhelfen, und weißt du noch eine Möglichkeit, wie das funktionieren könnte???

    Danke schon mal an alle!

    MFG Grau2

  • [autoit]


    $GamePath = 'Pfad zum Spiel' ;-> Datei Pfad zu deinem Speil z.B. "C:/Game.exe)
    $Key = '{CTRLDOWN}s{CTRLUP}' ;-> HotKey zum speichern
    $Sleep = '10' ;-> Zeit in Minuten
    $Control = '' ;-> Unwichtig, kannst du aber ändern wenn die die Contril ID weißt.

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

    $PID = Run($GamePath)

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

    Do
    $hWnd = WinGetHandle($PID)
    Until IsHWnd($hWnd)

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

    $Timer = TimerInit()

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

    While ProcessExists($PID)
    If TimerDiff($Timer) > $Sleep*60*1000 Then
    ControlSend($hWnd, '', '', $Key)
    $Timer = TimerInit()
    EndIf
    Sleep(1000)
    WEnd

    [/autoit]

    Sollte gehen? :D