Page 1 sur 1
RunProgram et paramètres
Publié : ven. 12/sept./2014 16:03
par jmg49
salut tous,
je galère sans fin pour passer les paramètres de RunProgram
ceci fonctionne très bien
Code : Tout sélectionner
prog$ = "ping.exe"
ping = RunProgram(prog$,"10.220.7.254","", #PB_Program_Open | #PB_Program_Read )
mais ça non
Code : Tout sélectionner
prog$ ="query.exe"
RunProgram(prog$,"session /server:montse","", #PB_Program_Open | #PB_Program_Read )
merci bien de votre bienveillance

Re: RunProgram et paramètres
Publié : ven. 12/sept./2014 21:41
par PAPIPP
Bonjour
comme cela
Code : Tout sélectionner
prog$="ping.exe"
prg=RunProgram(prog$, "www.purebasic.fr",".",30)
s_asci$=Space(64000)
Debug prg
If prg
s_asci$=ReadProgramString(prg)
OemToChar_(@s_asci$,@s_asci$)
Debug s_asci$
While ProgramRunning(prg)
s_asci$ =ReadProgramString(prg)
OemToChar_(@s_asci$,@s_asci$)
Debug s_asci$
Wend
EndIf
ou comme cela
Code : Tout sélectionner
prog$="ping.exe"
prg=RunProgram(prog$, "www.purebasic.fr",".",#PB_Program_Hide|#PB_Program_Open|#PB_Program_Read|#PB_Program_Write)
; prg=RunProgram(prog$, "www.purebasic.fr",".",30)
s_asci$=Space(64000)
Debug prg
If prg
s_asci$=ReadProgramString(prg)
OemToChar_(@s_asci$,@s_asci$)
Debug s_asci$
While ProgramRunning(prg)
s_asci$ =ReadProgramString(prg)
OemToChar_(@s_asci$,@s_asci$)
Debug s_asci$
Wend
EndIf
A+
Re: RunProgram et paramètres
Publié : lun. 15/sept./2014 7:33
par jmg49
Merci mais je n'ai pas de problème pour passer l'ip en paramètre pour la commande ping , récupérer les string en sortie ok aussi
c'est avec la commande query.exe , au taskmanager je vois si elle s'exécute ou non, dans mon cas , je n'ai pas la bonne syntaxe, je n'ai pas de processus query qui se lance....
ping , je ne lui passe que l'ip , même pas le -t j'utilise une boucle PureBasic ,
query on doit spécifier plus de parametres,
query session [{SessionName|UserName|SessionID}] [/server:ServerName] [/mode] [/flow] [/connect] [/counter]
Re: RunProgram et paramètres
Publié : lun. 15/sept./2014 8:41
par PAPIPP
Bonjour
Query.exec se trouve dans windows\system32\dllcache pour XP SP3
il faut donc donner le chemin exact.
Code : Tout sélectionner
prog$="c:\windows\system32\dllcache\query.exe"
prg=RunProgram(prog$, " SESSION /?",".",30)
s_asci$=Space(64000)
Debug prg
If prg
s_asci$=ReadProgramString(prg)
OemToChar_(@s_asci$,@s_asci$)
Debug s_asci$
While ProgramRunning(prg)
s_asci$ =ReadProgramString(prg)
OemToChar_(@s_asci$,@s_asci$)
Debug s_asci$
Wend
EndIf
A+
Re: RunProgram et paramètres
Publié : lun. 15/sept./2014 9:14
par jmg49
Sous seven, query est dans c:\windows\system32 , comme ping.exe
avec ton code , malheureusement , pas de processus query actif à l'exécution non plus,
en ligne de commande, on voit bien que si on ne passe pas bien les parametres, query ne se lance pas ...
utiliser la commande query est la solution de facilité , il suffit de récupérer les string en sortie, on peut aussi passer par l'api NetSessionEnum mais c'est plus fastidieux
je porte ce code du Delphi où j'avais déjà eu des problèmes de syntaxe pour passer ces fameux parametres,
pour ping , on passe juste l'ip , là , on doit passer "session" "/server:" "nomduserveur"
même avec l'aide de la commande RunProgram je bloque
Merci bien d'avoir pris le temps de regarder , je continue à investiguer
Re: RunProgram et paramètres
Publié : lun. 15/sept./2014 9:24
par PAPIPP
Bonjour jmg49
Chez moi sous XP SP3 le prg ci-dessus avec le bon chemin fonctionne parfaitement.
A+
Re: RunProgram et paramètres
Publié : mar. 23/sept./2014 9:29
par jmg49
Bonjour,
tu n'as peut etre pas de serveur tse sous la main, on va utiliser le poste local cela revient au même , peux tu tester la commande avec ton prog et voir si elle s'exécute correctement stp ?
query.exe session /server:127.0.0.1 et faire sortir les strings dans un messagerequester par ex , tu devrais obtenir
session utilisateur id actif/déco etc ..;
Merci,