Arrêter un proccess avec une 9+F2

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
wesker
Niveau 1
Niveau 1
Messages : 3
Enregistré le : jeu. 14 janv. 2021 01:43
Status : Hors ligne

Arrêter un proccess avec une 9+F2

#1

Message par wesker »

Bonjour, tout d'abord merci pour ce forum qui m'aide pas mal!
Du coup j'ai fait un Launcher pour lancer des .exe il ce lance sans problème
Mon soucis c'est que je voudrait les arrêter via une combinaison de touches. ç/9+F2.

Voila mon code
Global $fe = ProcessExists("attract.exe")
Global $jvs = ProcessExists("jvsexe.exe")
Run("@echo off")
If $jvs Then ProcessClose("jvsexe.exe")
If $fe Then ProcessClose("attract.exe")
Sleep(500)
Run("E:\NESiCAxLive\Util\cjvs.exe", "", @SW_HIDE)
Sleep(500)
Run("TeknoParrotUi.exe --profile=VT3.xml", "", @SW_HIDE)
Sleep(500)
ProcessWaitClose("TeknoParrotUi.exe")
Sleep(500)
ProcessClose("cjvs.exe")
Sleep(100)
If $fe Then
   FileChangeDir("E:\NESiCAxLive\AM")
   Run("E:\NESiCAxLive\AM\Multi.exe")
EndIf
Exit
.
Je voudrais fermer avec la combinaison de touche ç/F2 TeknoParrotUi.exe.
Merci d'avance pour votre aide.
Avatar du membre
Nine
AutoIt MVPs (MVP)
AutoIt MVPs (MVP)
Messages : 38
Enregistré le : ven. 17 avr. 2020 01:23
Status : Hors ligne

Re: Arrêter un proccess avec une 9+F2

#2

Message par Nine »

Voici une façon simple d'implanter des "multi hot keys".

Code : Tout sélectionner

#include <Constants.au3>
#include <Misc.au3>

; list of scan code can be found in help file under _IsPressed
Global $aMulti = ["71+BE","39+7B"]

Local $iHot

While Sleep(50)
  $iHot = HotkeyPressed()
  If $iHot Then ExitLoop
WEnd
ConsoleWrite ("Combi = " & $iHot & @CRLF)

Func HotkeyPressed()
  Local $aList
  For $i = 0 To UBound($aMulti) - 1
    $aList = StringSplit($aMulti[$i], "+")
    For $j = 1 to $aList[0]
      If Not _IsPressed($aList[$j]) Then ContinueLoop 2
    Next
    Return $i+1
  Next
  Return 0
EndFunc
wesker
Niveau 1
Niveau 1
Messages : 3
Enregistré le : jeu. 14 janv. 2021 01:43
Status : Hors ligne

Re: Arrêter un proccess avec une 9+F2

#3

Message par wesker »

Merci par contre vis a vis de mon code je mais sa a qu'elles lignes?merci
Avatar du membre
Nine
AutoIt MVPs (MVP)
AutoIt MVPs (MVP)
Messages : 38
Enregistré le : ven. 17 avr. 2020 01:23
Status : Hors ligne

Re: Arrêter un proccess avec une 9+F2

#4

Message par Nine »

Tu vas devoir faire quelques tests pour trouver la bonne façon de l'utiliser dans ton contexte. Si après tu n'y arrives pas, post un code que l'on peut exécuter et nous verrons comment t'aider à faire avancer tes habilités de programmeur. :wink:
wesker
Niveau 1
Niveau 1
Messages : 3
Enregistré le : jeu. 14 janv. 2021 01:43
Status : Hors ligne

Re: Arrêter un proccess avec une 9+F2

#5

Message par wesker »

Merci je t'avoue être débutant ^^.
Du coup je ne sait ou mettre le code et surtout a quoi correspond certaine des commande je te redonne mon code de mon fichier launch.exe
Global $fe = ProcessExists("attract.exe")
Global $jvs = ProcessExists("jvsexe.exe")
Run("@echo off")
If $jvs Then ProcessClose("jvsexe.exe")
If $fe Then ProcessClose("attract.exe")
Sleep(500)
Run("E:\NESiCAxLive\Util\cjvs.exe", "", @SW_HIDE)
Sleep(500)
Run("TeknoParrotUi.exe --profile=VT3.xml", "", @SW_HIDE)
Sleep(500)
ProcessWaitClose("TeknoParrotUi.exe")
Sleep(500)
ProcessClose("cjvs.exe")
Sleep(100)
If $fe Then
   FileChangeDir("E:\NESiCAxLive\AM")
   Run("E:\NESiCAxLive\AM\Multi.exe")
EndIf
Exit
pour les lancement ect de mon jeux tous fonctionne, seul la sortie du jeux me pose problème.
En tous cas merci pour ton aide.
ProcessWaitClose("TeknoParrotUi.exe")
Sleep(500)
je pense que c'est autour de cette ligne qui faut que je travaille, j'ai essayer même des ligne simple Hotkeyset mais cela ne fonctionne pas
Global $fe = ProcessExists("attract.exe")
Global $jvs = ProcessExists("jvsexe.exe")
Run("@echo off")
If $jvs Then ProcessClose("jvsexe.exe")
If $fe Then ProcessClose("attract.exe")
Sleep(500)
Run("E:\NESiCAxLive\Util\cjvs.exe", "", @SW_HIDE)
Sleep(500)
Run("TeknoParrotUi.exe --profile=VT3.xml", "", @SW_HIDE)
Sleep(500)
HotKeySet("{ESC}", "Terminate")
Func Terminate()
    ProcessClose ( "TeknoParrotUi.exe.exe" )
   Send ( "{F2}" )
    Exit 0
EndFunc
ProcessClose("cjvs.exe")
Sleep(100)
If $fe Then
   FileChangeDir("E:\NESiCAxLive\AM")
   Run("E:\NESiCAxLive\AM\Multi.exe")
EndIf
Exit
Répondre