Page 1 sur 1

Arrêter un proccess avec une 9+F2

Posté : jeu. 14 janv. 2021 01:51
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.

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

Posté : jeu. 14 janv. 2021 14:42
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

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

Posté : jeu. 14 janv. 2021 15:46
par wesker
Merci par contre vis a vis de mon code je mais sa a qu'elles lignes?merci

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

Posté : jeu. 14 janv. 2021 21:09
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:

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

Posté : ven. 15 janv. 2021 02:35
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