Manipuler les commandes d'un programme ouvert [Résolu]

Messages postés
43
Date d'inscription
mercredi 27 mai 2009
Statut
Membre
Dernière intervention
7 juin 2011
- - Dernière réponse : cs_GhostMoon
Messages postés
85
Date d'inscription
dimanche 14 mars 2010
Statut
Membre
Dernière intervention
17 juin 2013
- 23 mars 2010 à 15:21
Bonjour à tous,

Je rencontre actuellement un problème concernant l'ouverture et la manipulation d'un programme .exe à partir de mon programme C#.
En gros, avec ce programme je voudrais ouvrir un certain fichier que je viens de manipuler et ensuite le sauvegarder avec ce même programme. En effet, ce fichier est une librairie et le programme .exe permet d'ordonner automatiquement et d'une certaine manière celle-ci afin de pouvoir l'utiliser pour une certaine application. Si elle n'est pas rangée correctement, cette application en peut pas l'utiliser. Or j'aimerais éviter d'ouvrir manuellement ce petit programme .exe juste pour l'ouvrir et le sauvegarder une fois qu'il a fini d'ordonner.
J'ai vu qu'il était possible d'ouvrir un programme en background (pas visible en fait) mais est-il aussi possible de lui informer d'aller dans Fichier, Ouvrir et une fois cela réalisé de lui ordonner de sauvegarder et de quitter automatiquement.
Je précise aussi que le fichier que je veux ouvrir ne s'ouvre pas automatiquement avec la petite application .exe et que je suis obligé de passer par Fichier, Ouvrir.

Merci d'avance.
Afficher la suite 

Votre réponse

6 réponses

Meilleure réponse
Messages postés
835
Date d'inscription
samedi 15 novembre 2008
Statut
Membre
Dernière intervention
14 janvier 2017
23
3
Merci
Bonjour,

Je suppose que tu n'as pas le code du programme executable que tu essaies de controler, sinon ce serait trop simple lol.

Si ce programme peut être controlé par des séquences de touches genre Ctrl+O pour open et Ctrl+S pour save, tu dois pouvoir le controler depuis ton programme C# avec la class SendKey.

L'idée est de lancer le programme exe (class Process)
puis de le rendre actif (AppActivate)
ensuite de lancer les séquences de touches (class SendKeys)

par contre le programme exe sera sans doute visible, je ne connais pas de méthode permettant de controler un programme tournant en tâche de fond si celui-ci n'est pas prévu pour ça (Pipe, socket ...)

Bon code.
C# is amazing, enjoy it!

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 116 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_Robert33
Messages postés
238
Date d'inscription
lundi 2 mars 2009
Statut
Membre
Dernière intervention
29 septembre 2011
0
Merci
Salut,
tu ne peux pas utiliser une dll(bibliothèque) de ton programme qui ordonne et d'utiliser les fonctions implémenter à l'intérieur ?
Cela te permettrait de ne plus faire appel à ce programme.


==============================================
Possible meet Impossible to become...Possimpible
==============================================
Commenter la réponse de cs_MoH008
Messages postés
43
Date d'inscription
mercredi 27 mai 2009
Statut
Membre
Dernière intervention
7 juin 2011
0
Merci
Salut,

Tout d'abord, merci pour ta réponse mais bon, malheureusement ça ne marchera pas. Justement j'utilise les fonctions du dll pour éviter de lancer le programme pour modifier mes librairies.
Cependant, pour l'organisation automatique de celle-ci, il n'y a pas de fonction disponible. Quand j'ouvre le programme avec une librairie désorganisée, il la réorganise automatiquement au démarrage et je trouve pas la fonction permettant de faire ça.
C'est pourquoi je souhaitais passer par une autre méthode.

Si tu as d'autres idées je suis preneur. Mer ci quand même.
Commenter la réponse de draonix
Messages postés
238
Date d'inscription
lundi 2 mars 2009
Statut
Membre
Dernière intervention
29 septembre 2011
0
Merci
Salut,
peut être que d'autres applications font la même chose et que leurs librairies permettent de faire ce que tu souhaites...


==============================================
Possible meet Impossible to become...Possimpible
==============================================
Commenter la réponse de cs_MoH008
Messages postés
43
Date d'inscription
mercredi 27 mai 2009
Statut
Membre
Dernière intervention
7 juin 2011
0
Merci
Merci beaucoup pour ton aide Robert33. Je vais essayer ça aujourd'hui ou demain. Le programme est bien controlable par les raccourcis usuels donc ça devrait pas poser trop de problème.
Je te remercie de m'avoir donné le nom des classes.
Commenter la réponse de draonix
Messages postés
85
Date d'inscription
dimanche 14 mars 2010
Statut
Membre
Dernière intervention
17 juin 2013
0
Merci
vous pouvez publier le code pour l'essayer car je suis débutante en c# !!!
Commenter la réponse de cs_GhostMoon

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.