[..] Run Programme avec des paramètres

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Flomen
Niveau 1
Niveau 1
Messages : 13
Enregistré le : mar. 23 nov. 2010 10:49
Status : Hors ligne

[..] Run Programme avec des paramètres

#1

Message par Flomen »

Pouvez-vous m'aider dans la codification de l'instruction Run pour exécuter le programme SyncBack, soit :
"C:\Program Files\2BrightSparks\SyncBack\SyncBack.exe" -m "Save D et F"
Merci
Modifié en dernier par sylvanie le mar. 23 nov. 2010 20:23, modifié 1 fois.
Raison : insertion des balises du sujet
Avatar du membre
zeshrek
Niveau 10
Niveau 10
Messages : 984
Enregistré le : mer. 17 nov. 2010 09:31
Localisation : Sur ma chaise
Status : Hors ligne

Re: Run Programme avec des paramètres

#2

Message par zeshrek »

ShellExecute ( "filename" [, "parameters" [, "workingdir" [, "verb" [, showflag]]]] )
ou
ShellExecuteWait ( "filename" [, "parameters" [, "workingdir" [, "verb" [, showflag]]]] )
Si vis pacem para bellum
Flomen
Niveau 1
Niveau 1
Messages : 13
Enregistré le : mar. 23 nov. 2010 10:49
Status : Hors ligne

Re: Run Programme avec des paramètres

#3

Message par Flomen »

zeshrek a écrit :ShellExecute ( "filename" [, "parameters" [, "workingdir" [, "verb" [, showflag]]]] )
ou
ShellExecuteWait ( "filename" [, "parameters" [, "workingdir" [, "verb" [, showflag]]]] )
Merci pour votre rapidité, cependant, pouvez-vous m'en dire plus sur le passage des paramètres, dans mon cas, je doit passer les paramètres suivants :
-m "Save D et F" (problème avec " )
Merci
Avatar du membre
Iste
Niveau 11
Niveau 11
Messages : 1870
Enregistré le : jeu. 04 déc. 2008 14:21
Localisation : 76
Status : Hors ligne

Re: Run Programme avec des paramètres

#4

Message par Iste »

La réponse de zeshrek coresspond parfaitement a votre demande.
Relisez la, et tant que vous y etes, lisez aussi les regles de présentation des messages
Signez ici
Avatar du membre
zeshrek
Niveau 10
Niveau 10
Messages : 984
Enregistré le : mer. 17 nov. 2010 09:31
Localisation : Sur ma chaise
Status : Hors ligne

Re: Run Programme avec des paramètres

#5

Message par zeshrek »

Je veux bien qu'on ait tous commencé un jour, mais là...
La programmation demande quand même un minimum de connaissance (les codes ASCII par exemple) et de réflexion (si les guillemets servent de délimitateur de chaine comment faire pour mettre des guillemets dans la chaine ? Bin en les injectant via les codes ASCII ).
Bon, un petit code valant mieux qu'on long discourt :

Code : Tout sélectionner

$programme = "C:\Program Files\2BrightSparks\SyncBack\SyncBack.exe"
$parametres = "-m " & chr(34) & "Save D et F" & chr(34)
ShellExecuteWait ($programme , $parametres)
Si vis pacem para bellum
Flomen
Niveau 1
Niveau 1
Messages : 13
Enregistré le : mar. 23 nov. 2010 10:49
Status : Hors ligne

Re: Run Programme avec des paramètres

#6

Message par Flomen »

[..] Paramètres
Je ne comprends pas votre réponse, d'autre part, je j'utilise mal le forum, meric de me dire ce qui ne va pas plutot que de me donner un lien.
Mon problème avec le passage de paramètre est "
Mon paramètre est :
-m "Save D et F"
si je passe la syntaxe suivante ça ne fonctionne pas, j'ai une erreur (problème avec le nombre de "
ShellExecute ( "C:\Test.exe","-m "[Save D et F]""
Pouvez-vous me donner la syntaxe de la ligne ci-dessus ?
Merci, c'est ma 1ère journée sur ce forum
Avatar du membre
zeshrek
Niveau 10
Niveau 10
Messages : 984
Enregistré le : mer. 17 nov. 2010 09:31
Localisation : Sur ma chaise
Status : Hors ligne

Re: Run Programme avec des paramètres

#7

Message par zeshrek »

Pour la ligne de commande, j'ai donné la réponse dans le message juste au dessus. Il y a 3 lignes de codes, il faut juste les lire.
Pour le fonctionnement du forum, n'étant pas modo, je laisserai ceux ci traiter de la question.
Si vis pacem para bellum
Avatar du membre
Iste
Niveau 11
Niveau 11
Messages : 1870
Enregistré le : jeu. 04 déc. 2008 14:21
Localisation : 76
Status : Hors ligne

Re: Run Programme avec des paramètres

#8

Message par Iste »

Nan mais moi je vais juste supprimer le topic si ca continu hein...
Je l'ai pas déja fais car zeshrek a prit le temps de répondre, et que je trouve pas ca pas sympa de virer un message d'une personne qui prend son temps pour les autres.

Par contre,

@Flomen, premiere journée ou pas, cela ne vous empeche pas de lire le reglement. Ne me dites pas que c'est déja fais, j'aurai du mal a croire que vous ayez raté la ligne en rouge clignotant écrite en super gros au tout début.
Ca c'est pour la présentation de votre titre qui n'est toujours pas conforme au reglement.

Enfin, quand quelqu'un vous passe un code complet répondant a votre demande avec en plus des explication, c'est un minimum que d'y prêter attention.
Signez ici
Avatar du membre
bloodwolff
Membre émérite
Membre émérite
Messages : 655
Enregistré le : ven. 18 avr. 2008 22:36
Localisation : Québec
Status : Hors ligne

Re: Run Programme avec des paramètres

#9

Message par bloodwolff »

comment faire pour mettre des guillemets dans la chaine ?
Il y a 2 sortes de délimiteur de chaîne donc une première méthode considte à utiliser l'autre délimiteur
Pour rappel les 2 délimiteurs sont ( ' " ) Donc

Code : Tout sélectionner

 msgbox(0,"" , 'Je met un 2 entre délimiteur "2"')
fonctionnera

Sinon on peut simplement doublé les délimiteur donc

Code : Tout sélectionner

 msgbox(0,"" , "Je met un 2 entre délimiteur ""2""")
fonctionnera aussi

Sinon il reste l'injection par ascii mais je préfère les 2 première méthodes
Compte skype : bloodwolfff
Avatar du membre
zeshrek
Niveau 10
Niveau 10
Messages : 984
Enregistré le : mer. 17 nov. 2010 09:31
Localisation : Sur ma chaise
Status : Hors ligne

Re: Run Programme avec des paramètres

#10

Message par zeshrek »

Ayant été habitué aux ASCII quand j'ai fait mes premiers pas en programmation (ca remonte a un peu plus de 25 ans) j'ai le réflexe de les utiliser, mais ta méthode est effectivement tout aussi valable bloodwolff.
En plus on y gagne sur le nombre de touches a taper ! (même si a mon sens on y perd en lisibilité)
Si vis pacem para bellum
Flomen
Niveau 1
Niveau 1
Messages : 13
Enregistré le : mar. 23 nov. 2010 10:49
Status : Hors ligne

Re: Run Programme avec des paramètres

#11

Message par Flomen »

Iste a écrit :Nan mais moi je vais juste supprimer le topic si ca continu hein...
Je l'ai pas déja fais car zeshrek a prit le temps de répondre, et que je trouve pas ca pas sympa de virer un message d'une personne qui prend son temps pour les autres.

Par contre,

@Flomen, premiere journée ou pas, cela ne vous empeche pas de lire le reglement. Ne me dites pas que c'est déja fais, j'aurai du mal a croire que vous ayez raté la ligne en rouge clignotant écrite en super gros au tout début.
Ca c'est pour la présentation de votre titre qui n'est toujours pas conforme au reglement.

Enfin, quand quelqu'un vous passe un code complet répondant a votre demande avec en plus des explication, c'est un minimum que d'y prêter attention.
[R] Résolu
Vous avez une manière de répondre qui est loin d’être sympathique
Flomen
Niveau 1
Niveau 1
Messages : 13
Enregistré le : mar. 23 nov. 2010 10:49
Status : Hors ligne

Re: Run Programme avec des paramètres

#12

Message par Flomen »

bloodwolff a écrit :
comment faire pour mettre des guillemets dans la chaine ?
Il y a 2 sortes de délimiteur de chaîne donc une première méthode considte à utiliser l'autre délimiteur
Pour rappel les 2 délimiteurs sont ( ' " ) Donc

Code : Tout sélectionner

 msgbox(0,"" , 'Je met un 2 entre délimiteur "2"')
fonctionnera

Sinon on peut simplement doublé les délimiteur donc

Code : Tout sélectionner

 msgbox(0,"" , "Je met un 2 entre délimiteur ""2""")
fonctionnera aussi

Sinon il reste l'injection par ascii mais je préfère les 2 première méthodes
[R] merci, ça fonctionne
Flomen
Niveau 1
Niveau 1
Messages : 13
Enregistré le : mar. 23 nov. 2010 10:49
Status : Hors ligne

Re: Run Programme avec des paramètres

#13

Message par Flomen »

zeshrek a écrit :Ayant été habitué aux ASCII quand j'ai fait mes premiers pas en programmation (ca remonte a un peu plus de 25 ans) j'ai le réflexe de les utiliser, mais ta méthode est effectivement tout aussi valable bloodwolff.
En plus on y gagne sur le nombre de touches a taper ! (même si a mon sens on y perd en lisibilité)
Tu gardes tes remarques fort désagréable pour toi, moi je n'ai 25 ans d'expérience dans le language VB, Cependant ta solution fonctionne mais tu pourrais dialoguer avec un peu plus de Fair-Play
Merci
Avatar du membre
zeshrek
Niveau 10
Niveau 10
Messages : 984
Enregistré le : mer. 17 nov. 2010 09:31
Localisation : Sur ma chaise
Status : Hors ligne

Re: [..] Run Programme avec des paramètres

#14

Message par zeshrek »

heuuuu you are gentil garcon, mais mon mssage s'adressait a bloodwolff ! Je comparais les mérites respectifs de sa solution et de la mienne.

Mainetnant si tu as des commentaires a faire sur les qui t'ont repris sur ton respect des regles du forum, tu vois ca avec eux, et tu viens pas me chercher des poux !
Si vis pacem para bellum
Avatar du membre
Iste
Niveau 11
Niveau 11
Messages : 1870
Enregistré le : jeu. 04 déc. 2008 14:21
Localisation : 76
Status : Hors ligne

Re: [..] Run Programme avec des paramètres

#15

Message par Iste »

Moi je pars du principe que comme j'ai comme consigne de supprimer tout les post mal formatés, je suis plutot sympa...
Signez ici
Avatar du membre
cutprod
Niveau 6
Niveau 6
Messages : 273
Enregistré le : jeu. 30 sept. 2010 17:25
Localisation : Sud Ouest
Status : Hors ligne

Re: [..] Run Programme avec des paramètres

#16

Message par cutprod »

Et en plus c'est la pleine lune en ce moment...
Même mon chien est super vénère...
Je sais pas pourquoi je m'en mêle ? Je vais me faire envoyer chier!
Cut, srcipteur du dimanche...désolé !-)
Avatar du membre
noman
Niveau 3
Niveau 3
Messages : 36
Enregistré le : lun. 08 déc. 2008 01:08
Status : Hors ligne

Re: [..] Run Programme avec des paramètres

#17

Message par noman »

Bonsoir,

Il y a aussi la fonction _RunDos

Exemple :

Code : Tout sélectionner

#include <Process.au3>
$rc = _RunDos("start Http://www.autoitscript.com")
L'avantage de _RunDos est qu'il utilise les commandes silencieusement.

Edit : correction apportée, merci TLem.
Modifié en dernier par noman le sam. 27 nov. 2010 15:36, modifié 1 fois.
...
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11830
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Run Programme avec des paramètres

#18

Message par Tlem »

_RunDos n'est pas une API. C'est juste une fonction qui ce trouve dans process.au3. :roll:

Code : Tout sélectionner

; #FUNCTION# ====================================================================================================================
; Name...........: _RunDOS
; Description ...: Executes a DOS command in a hidden command window.
; Syntax.........: _RunDOS($sCommand)
; Parameters ....: $sCommand - Command to execute
; Return values .: Success      - the exit code of the command
;                  Failure      - 0 and sets @Error to non-zero
; Author ........: Jeremy Landes <jlandes at landeserve dot com>
; ===============================================================================================================================
Func _RunDOS($sCommand)
    Local $nResult = RunWait(@ComSpec & " /C " & $sCommand, "", @SW_HIDE)
    Return SetError(@error, @extended, $nResult)
EndFunc   ;==>_RunDOS
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
vincm70
Niveau 2
Niveau 2
Messages : 15
Enregistré le : mer. 15 oct. 2008 00:28
Status : Hors ligne

Re: [..] Run Programme avec des paramètres

#19

Message par vincm70 »

Bonjour ,
Moi j'ai le meme probleme.
Je veut executer cette commande correspondant a un exécutable dans copssh:

"C:\Program Files\ICW\bin\mkpasswd.exe" -l > "C:\Program Files\ICW\etc\passwd"

J'ai essayer ceci:

Code : Tout sélectionner

$chemin= '"C:\Program Files\ICW\etc\passwd"'

$programme = "C:\Program Files\ICW\bin\mkpasswd.exe"
$parametres = "-l " & chr(34) & $chemin & chr(34)
ShellExecuteWait ($programme , $parametres)
 
Je précise que cette commande marche correctement dans un fichier. *.bat

Merci si quelqu'un a la patienec de m'aider.
Modifié en dernier par vincm70 le sam. 27 nov. 2010 11:38, modifié 1 fois.
Avatar du membre
zeshrek
Niveau 10
Niveau 10
Messages : 984
Enregistré le : mer. 17 nov. 2010 09:31
Localisation : Sur ma chaise
Status : Hors ligne

Re: [..] Run Programme avec des paramètres

#20

Message par zeshrek »

tu y es presque vincm70 !
Je veut executer cette commande correspondant a un exécutable dans copssh:
"C:\Program Files\ICW\bin\mkpasswd.exe" -l > "C:\Program Files\ICW\etc\passwd"
J'ai essayer ceci:
$chemin= '"C:\Program Files\ICW\etc\passwd"'
$programme = "C:\Program Files\ICW\bin\mkpasswd.exe"
$parametres = "-l " & chr(34) & $chemin & chr(34)
ShellExecuteWait ($programme , $parametres)
Tu as oublié le '>' dans $parametres
$parametres = "-l > " & chr(34) & $chemin & chr(34)
Si vis pacem para bellum
Répondre