Shellexecut, utilisation

deck_bsd Messages postés 1243 Date d'inscription jeudi 31 mars 2005 Statut Membre Dernière intervention 3 août 2016 - 22 nov. 2005 à 19:47
deck_bsd Messages postés 1243 Date d'inscription jeudi 31 mars 2005 Statut Membre Dernière intervention 3 août 2016 - 23 nov. 2005 à 18:28
Bonsoir tous le monde,



Voila une bête question, mais qui m'enlevera ce doute. Je vois beaucoup
de monde lors de l'utilisation de ShellExecute qui prennent la peine de
séparer chemin vers le fichier à executer et nom du fichier à éxécuter.
Moi personnelement je met tout dans le paramètre qui chez beaucoup
recoit juste le nom du fichier. Ca marche et ces plus simple lol . Mais
je voulai savoir si cette utilisation est bonne. Exemple :



ShellExecute(NULL,"open","c:\nom.exe",0,0,SW_SHOWDEFAULT);



Merci d'avance.

7 réponses

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
22 nov. 2005 à 20:13
C'est une utilisation tout à fait correcte, le nom de fichier devrait oujours être complet pour éviter toute ambiguité, de plus si on ne le met pas nous même la fonction le fait en interne alors...
Le 5eme param est la currentDirectory, elle peut très bien être mise ailleurs que sur le dossier du fichier à ouvrir.

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
0
deck_bsd Messages postés 1243 Date d'inscription jeudi 31 mars 2005 Statut Membre Dernière intervention 3 août 2016 2
22 nov. 2005 à 20:20
Oui mais alors je ne vois pas l'utilité de la currentdirectory, de tout
façons elle est souvent autre que celle du fichier a ouvrire, car le
fichier à ouvrire n'est pas spécialement dans le dossier de
l'application. Mais je ne voi pas en quoi cela intervient dans
l'opération.
0
deck_bsd Messages postés 1243 Date d'inscription jeudi 31 mars 2005 Statut Membre Dernière intervention 3 août 2016 2
22 nov. 2005 à 20:26
peut etre est ce utile lorsque l'on met juste le nom du fichier alors?
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
22 nov. 2005 à 20:38
Ben oui si elle est souvent autre c'est bien là son utilité, il y a une curDir associée à tout prog.
Un exe qui veut ouvrir un fichier sans fullPath, fichier sera recherché d'abord dans la curDir et la curDir n'est pas obligatoirement le dossier de l'exe, c'est où on le fixe. A l'exécution un prog peut par exemple changer sa curDir par SetCurrentDirectory().

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
deck_bsd Messages postés 1243 Date d'inscription jeudi 31 mars 2005 Statut Membre Dernière intervention 3 août 2016 2
23 nov. 2005 à 07:59
Merci pour l'information, désoler d'avoir répondu si tard. Encore une
petite question, le premièr paramètre de la fonction, le HANDLE, il est
mis que c'est celui de la fenetre parent, mais comment l'obtenir?Et si
l'apelle n'est pas à associé avec une autre fenetre, ce paramètre est
il quand même utile?
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
23 nov. 2005 à 09:07
hwnd est le param pour associer les messages d'erreur avec une fenêtre mais pas obligatoire du tout, d'ailleurs on passe généralement 0.

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
0
deck_bsd Messages postés 1243 Date d'inscription jeudi 31 mars 2005 Statut Membre Dernière intervention 3 août 2016 2
23 nov. 2005 à 18:28
Merci pour ton explication.
0
Rejoignez-nous