Page 1 sur 1
[R] Recupérer l'argument avec lequel mon script à été lancé
Posté : sam. 28 juin 2014 09:21
par TomAijerrie
La fonction Run(...) a pour second parametre "workingdir" et la foncttion Shellexecute(...) a pour second parametre "parameters".
Je voudrais lancer l'un de mes scripts (déjà compilé) avec l'un de ces fonctions, en imposant un workingdir ou un parameter.
Le script en question lis des sons .mp3, pour l'instant je choisis le fichier grace à FileOpenDialog(). Je voudrais pouvoir ouvrir un fichier depuis l'explorateur Windows en faisant (clic droit) /Ouvrir avec.../ MonScript.exe
Voici mon problème :
Quelle(s) ligne(s) de code faut-il ajouter dans Monscript.au3 pour qu'il puisse savoir quel fichier ouvrir.
Pour ceux qui veulent voir mon code...
► Afficher le texte
Code : Tout sélectionner
#include <sound.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <SliderConstants.au3>
#Region ### START Koda GUI section ### Form=
Global $Form1_1 = GUICreate("Lecteur mp3", 200, 60, 192, 124)
GUISetBkColor(0x004090)
Global $Button1 = GUICtrlCreateButton("Play", 0, 22, 45, 20, $BS_CENTER)
GUICtrlSetBkColor(-1,0x0020df)
GUICtrlSetColor(-1, 0xFFFFFF)
Global $Button5 = GUICtrlCreateButton("Stop", 50, 22, 45, 20, $BS_CENTER)
GUICtrlSetBkColor(-1,0x0020df)
GUICtrlSetColor(-1, 0xFFFFFF)
Global $Button6 = GUICtrlCreateButton(" ... ",100,22,45,20,$BS_CENTER)
GUICtrlSetBkColor(-1,0x0020df)
GUICtrlSetColor(-1, 0xFFFFFF)
Global $Input1 = GUICtrlCreateInput("Z:\dossier\fichier.mp3", 0, 0, 202, 20)
GUICtrlSetColor(-1, 0xFFFFFF)
GUICtrlSetBkColor(-1,0x000000)
Global $Slider1 = GUICtrlCreateSlider(0, 43, 200, 20,1)
GUICtrlSetBkColor(-1,0x1040)
GUICtrlSetData(-1,90)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
GUISetState(@SW_LOCK,$Button1)
SoundSetWaveVolume(GUICtrlRead($Slider1))
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
If FileExists(GUICtrlRead($Input1)) Then
SoundPlay(GUICtrlRead($Input1))
Else
play()
SoundPlay(GUICtrlRead($Input1))
EndIf
Case $Button6
play()
Case $Button5
SoundPlay("")
Case $Slider1
SoundSetWaveVolume(GUICtrlRead($Slider1))
EndSwitch
WEnd
Func play()
GUICtrlSetData($Input1,FileOpenDialog("Ouvrir un son", @ScriptDir & '\', "Tous les sons (*.mp3;*.wma)|Sons MP3 (*.mp3)|Sons wave (*.wma)|Autre formats pris en charge (*.mpg)|Tous (*.*)",9))
EndFunc
Ce code reste à ameliorer, c'est l'un des premiers codes que j'ai fais en entier tout seul.
Merci d'avance
Re: [..] Recupérer l'argument avec lequel mon script à été l
Posté : sam. 28 juin 2014 12:31
par ZDS
Bonjour,
Je te conseille de regarder comment marche "$cmdLine" et "$cmdLineRaw" dans l'aide d'AutoIt, tu y trouveras ton bonheur.
A bientôt !
Re: [..] Recupérer l'argument avec lequel mon script à été l
Posté : sam. 28 juin 2014 13:29
par TomAijerrie
Merci beaucoup.
C'est $CmdLine[1] qu'il me fallait.
Mon Autoit Help 3.3.8.1 ne connais pas $cmdline, Ou peut-on avoir une version plus complete ?
Re: [..] Recupérer l'argument avec lequel mon script à été l
Posté : sam. 28 juin 2014 13:55
par ZDS
L'aide d'AutoIt a toujours parlé de cette commande, que ce soit en 3.3.8.1, avant ou après :
http://www.autoitscript.com/autoit3/docs/intro/running.htm#CommandLine
C'est juste qu'il faut faire une recherche par mot clef, et non par fonction.
Ton script étant (en tout cas pour le moment) très basique, tu ferais mieux de partir sur la dernière version d'AutoIt (3.3.12.x).
Pense à mettre ton sujet comme [R]ésolu !