Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

WD - lancer un autre programme et rempllir champs

4 réponses
Avatar
titou44
bonjour

j'ai un client qui me damnde si notre logiciel peut :

en cliquant sur un bouton dans notre logicel
- lancer un autre programme (non développé par nous)
- remplir 3 champs de saisie de cet autre logiciel à partir de données
stockées dans notre logicel
- plus cliquer sur un bouton de validation dans l'autre logiciel.
- arrêter l'autre logiciel

l'autre logiciel n'a pas été développé sous windev.

je suis preneur de pistes et/ou idées.

merci par avance

titou44 chez libresurf.com

4 réponses

Avatar
Philippe Klein
titou44 wrote in news:52384d5e$0$3733
$:

bonjour

j'ai un client qui me damnde si notre logiciel peut :

en cliquant sur un bouton dans notre logicel
- lancer un autre programme (non développé par nous)
- remplir 3 champs de saisie de cet autre logiciel à partir de données
stockées dans notre logicel
- plus cliquer sur un bouton de validation dans l'autre logiciel.
- arrêter l'autre logiciel

l'autre logiciel n'a pas été développé sous windev.





En théorie oui ... sauf si le logiciel cible n'accepte pas les variables
passées en ligne de commande.
Avatar
Firetox
Bonjour,

avec les api et pour voir si cela est possible il faut prendre un prog
espion (il y en a un fait avec windev)
qui permet de voir la class de l'application et si les champs sont
identifiés correctement

ensuite avec handle tu recupere le handle de l'application ou tu la lance si
besoin
et tu envoi ce que tu veux (je le fait pour interroger des cameras sur un
logiciel qui permet d'acceder au film saugegarder car le temps reel c'et
facile la webcam te le donne mais le systeme permet de voir les sequence
enregistrée et donc il faut specifier la date l'heure la camera etc ... pour
avoir le bon film qui est enregistrer et donc une fois cela fait je ferme
l'appli et je recupere le fiml

donc pour cela il faut
- un logiciel capable de voir les elements d'une fenetre (logiciel
espion : autohotkey en a un)
- enssuite voir les champs de l'application qu'on veut manipuler si elles
sont un handle ou nom et qu'on puisse les atteindre


pour pouvoir avoir un code windev par exemple :

lpBName= "Video Viewer Application" // Titre de la fenetre
contenant le bouton
lpBClass="#32770" // Classe de la fenetre
LanceAppli(vl_DVREXE,DDEActif,Faux) // lancement de l'application
externe
BOUCLE
//
NumFen
=AppelDLL32("USER32","FindWindowExA",Null,Null,&lpBClass,&lpBName)
ControleDVR(NumFen ,0x741) // si la fenetre abandon sse presente
on aura le champs 0x741 present dans l'appi
ControleDVR(NumFen ,0x3EC) // la varaible globale
vg_handleFenetre est affecté si on trouve le champs

// on sort des que la fenetre de selection des IP est disponible
on aura alors la liste selection 0x558
vg_handleObjetCherche = 0x5E8
AppelDLL32("User32", "EnumChildWindows", Null, &EnumChilds, 0)
SI Vg_handleFenetre >0 ALORS SORTIR
FIN


par exemple les camera dans le logiciel sont idenfifie comme cela :
,0x917+v_numeroCam : c'est un champs contenant l'ip de la camera donc
ensuite je recupere le handle et je peux envoyer ce que je veux dans ce
champs avec des sendMessage ou envoieTouche
pour changer l'ip de la camera que je veux controler

bref c'est chaud mais possible avant tout voir avec un logiciel si les
champs sont identifiable par api

@+

"titou44" a écrit dans le message de groupe de discussion :
52384d5e$0$3733$

bonjour

j'ai un client qui me damnde si notre logiciel peut :

en cliquant sur un bouton dans notre logicel
- lancer un autre programme (non développé par nous)
- remplir 3 champs de saisie de cet autre logiciel à partir de données
stockées dans notre logicel
- plus cliquer sur un bouton de validation dans l'autre logiciel.
- arrêter l'autre logiciel

l'autre logiciel n'a pas été développé sous windev.

je suis preneur de pistes et/ou idées.

merci par avance

titou44 chez libresurf.com
Avatar
titou44
merci pour le code.
je regarde cela vendredi.

cordialement
titou44 chez libresurf.com

Firetox a présenté l'énoncé suivant :
Bonjour,

avec les api et pour voir si cela est possible il faut prendre un prog espion
(il y en a un fait avec windev)
qui permet de voir la class de l'application et si les champs sont identifiés
correctement

ensuite avec handle tu recupere le handle de l'application ou tu la lance si
besoin
et tu envoi ce que tu veux (je le fait pour interroger des cameras sur un
logiciel qui permet d'acceder au film saugegarder car le temps reel c'et
facile la webcam te le donne mais le systeme permet de voir les sequence
enregistrée et donc il faut specifier la date l'heure la camera etc ... pour
avoir le bon film qui est enregistrer et donc une fois cela fait je ferme
l'appli et je recupere le fiml

donc pour cela il faut
- un logiciel capable de voir les elements d'une fenetre (logiciel espion :
autohotkey en a un)
- enssuite voir les champs de l'application qu'on veut manipuler si elles
sont un handle ou nom et qu'on puisse les atteindre


pour pouvoir avoir un code windev par exemple :

lpBName= "Video Viewer Application" // Titre de la fenetre contenant
le bouton
lpBClass="#32770" // Classe de la fenetre
LanceAppli(vl_DVREXE,DDEActif,Faux) // lancement de l'application
externe
BOUCLE
//
NumFen
=AppelDLL32("USER32","FindWindowExA",Null,Null,&lpBClass,&lpBName)
ControleDVR(NumFen ,0x741) // si la fenetre abandon sse presente
on aura le champs 0x741 present dans l'appi
ControleDVR(NumFen ,0x3EC) // la varaible globale
vg_handleFenetre est affecté si on trouve le champs

// on sort des que la fenetre de selection des IP est disponible
on aura alors la liste selection 0x558
vg_handleObjetCherche = 0x5E8
AppelDLL32("User32", "EnumChildWindows", Null, &EnumChilds, 0)
SI Vg_handleFenetre >0 ALORS SORTIR
FIN


par exemple les camera dans le logiciel sont idenfifie comme cela :
,0x917+v_numeroCam : c'est un champs contenant l'ip de la camera donc ensuite
je recupere le handle et je peux envoyer ce que je veux dans ce champs avec
des sendMessage ou envoieTouche
pour changer l'ip de la camera que je veux controler

bref c'est chaud mais possible avant tout voir avec un logiciel si les champs
sont identifiable par api

@+

"titou44" a écrit dans le message de groupe de discussion :
52384d5e$0$3733$

bonjour

j'ai un client qui me damnde si notre logiciel peut :

en cliquant sur un bouton dans notre logicel
- lancer un autre programme (non développé par nous)
- remplir 3 champs de saisie de cet autre logiciel à partir de données
stockées dans notre logicel
- plus cliquer sur un bouton de validation dans l'autre logiciel.
- arrêter l'autre logiciel

l'autre logiciel n'a pas été développé sous windev.

je suis preneur de pistes et/ou idées.

merci par avance

titou44 chez libresurf.com
Avatar
titou44
pas de paramètres en ligne de commande possibles

titou44 chez libresurf.com


Philippe Klein avait énoncé :
titou44 wrote in news:52384d5e$0$3733
$:

bonjour

j'ai un client qui me damnde si notre logiciel peut :

en cliquant sur un bouton dans notre logicel
- lancer un autre programme (non développé par nous)
- remplir 3 champs de saisie de cet autre logiciel à partir de données
stockées dans notre logicel
- plus cliquer sur un bouton de validation dans l'autre logiciel.
- arrêter l'autre logiciel

l'autre logiciel n'a pas été développé sous windev.





En théorie oui ... sauf si le logiciel cible n'accepte pas les variables
passées en ligne de commande.