Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 03/06/2009, à 15:09

Snake-Eyes

Utilisation de ShellExecute

Bonjour a tous,

Je viens vous voir car j'ai un problème avec l'utilisation de ShellExecute.

J'utilise un ShellExecute pour lancer un programme qui me trace une courbe "gnuplot". Le problème c'est que pour passer à la suite de l'execution de mon programme, j'ai besoin d'attendre la fin du ShellExecute.
Pour l'instant je fais comme ceci :

ShellExecute(0, L"open",L"D:\\gnuplot\\bin\\wgnuplot", L"\\graphique.txt -persist", 0, SW_HIDE); /*"graphique.txt" est un fichier texte contenant la courbe à tracer.*/
Sleep(1000);
...etc

Mais j'aimerais ne pas utiliser un Sleep car le temps d'execution varie beaucoup d'un ordinateur à l'autre.
Si vous avez une solution pour attendre la fin du processus, je suis preneur. J'ai entendu parler de "ShellExecuteEx" mais je ne pense pas pouvoir mettre tous les paramètres dont j'ai besoin;

Je vous remercie d'avance de passer du temps sur mon problème

#2 Le 03/06/2009, à 15:11

Snake-Eyes

Re : Utilisation de ShellExecute

Snake-Eyes a écrit :

Bonjour a tous,

Je viens vous voir car j'ai un problème avec l'utilisation de ShellExecute en c++.

J'utilise un ShellExecute pour lancer un programme qui me trace une courbe "gnuplot". Le problème c'est que pour passer à la suite de l'execution de mon programme, j'ai besoin d'attendre la fin du ShellExecute.
Pour l'instant je fais comme ceci :

ShellExecute(0, L"open",L"D:\\gnuplot\\bin\\wgnuplot", L"\\graphique.txt -persist", 0, SW_HIDE); /*"graphique.txt" est un fichier texte contenant la courbe à tracer.*/
Sleep(1000);
...etc

Mais j'aimerais ne pas utiliser un Sleep car le temps d'execution varie beaucoup d'un ordinateur à l'autre.
Si vous avez une solution pour attendre la fin du processus, je suis preneur. J'ai entendu parler de "ShellExecuteEx" mais je ne pense pas pouvoir mettre tous les paramètres dont j'ai besoin;

Je vous remercie d'avance de passer du temps sur mon problème

#3 Le 03/06/2009, à 15:13

gilbert

Re : Utilisation de ShellExecute

ShellExecute ? C'est quoi ça ?? ça pue le microsoft... normalement on utilise system(3) de stdlib..

Tu as cette fonction avec quoi comme librairie?


Simplement moi-même..

Hors ligne

#4 Le 03/06/2009, à 15:17

Snake-Eyes

Re : Utilisation de ShellExecute

Oui désolé c'est du microsoft:(

J'ai cette fonction avec la librairie "shell32". J'utilise pas System car je ne veux pas que le terminal soit apparent.

#5 Le 03/06/2009, à 15:25

gilbert

Re : Utilisation de ShellExecute

mais tu travailles sur un système POSIX ?

tu peux utiliser execve(2) de unistd que tu peux mettre dans un fork par exemple..


Simplement moi-même..

Hors ligne

#6 Le 03/06/2009, à 15:33

Snake-Eyes

Re : Utilisation de ShellExecute

Non, j'utilise Windows mais du coup je pense que j'ai pas posté ou il fallait. Désolé de vous avoir dérangé.

#7 Le 01/04/2024, à 14:29

didess49

Re : Utilisation de ShellExecute

BONJOUR ,
moi j'en aurais besoin pour wine quelqu'un s'aurait comment le mettre ????

Hors ligne

#8 Le 01/04/2024, à 14:36

xubu1957

Re : Utilisation de ShellExecute

Bonjour,

Discussion qui date de 15 ans, et dont les participants sont absents du forum depuis bien longtemps. roll


    ↓↓↓↓↓↓↓

Dernière modification par xubu1957 (Le 01/04/2024, à 14:39)


Conseils pour les nouveaux demandeurs et pas qu'eux
Important : Pensez à passer vos sujets en [Réso|u] lorsque ceux-ci le sont, au début du titre en cliquant sur Modifier sous le premier message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci.                   Membre de Linux-Azur

Hors ligne