Salut tout le monde,
Quelqu'un saurait comment la fonction shellexecute() récupère
le chemin du programme par defaut du fichier à ouvrir?
Sinon si vous avez un pti code qui fait ca aussi, ca fera l'affaire biensur![]()
Salut tout le monde,
Quelqu'un saurait comment la fonction shellexecute() récupère
le chemin du programme par defaut du fichier à ouvrir?
Sinon si vous avez un pti code qui fait ca aussi, ca fera l'affaire biensur![]()
La fonction ShellExecute
- lit dans la base de registre la clé correspondant à l'extension (sa valeur est le type de fichier) ... exemple : txtfile pour .txt
- lit (toujours dans la base de registre) l'appli à lancer qui correspond à ce type de fichier) (sous-clé Open)
exemple pour txtfile :
qui contient :HKEY_CLASSES_ROOT\txtfile\shell\open\command
- ouvre le fichier en utilisant cette appli (chez moi : NOTEPAD.EXE pour un fichier texte... pourrait être différent sur une autre machine, bien évidemment)%SystemRoot%\system32\NOTEPAD.EXE %1
Tu peux faire tout celà toi-même (tu trouveras sur ce forum ce qu'il faut pour lire dans la base de registre), mais il vaut bien mieux utiliser la fonction ShellExecute, faite pour celà !
Merci pour toutes ces infos
En fait je suis obligé d'utilisé la fonction shell() pour récupérer le PID mais je suis donc obligé de fournir le programme a utiliser......
Allez jme met au boulot
Utilise ShellExecute
et intéresse-toi à la fonction GetCurrentProcessId de la librairie Kernel32 de l'Api de windows...
tu auras ainsi le PID de ce que tu as ouvert ...![]()
Pour t'aider, tu peux regarder le source de mon composant DiLaunchAndForget6.ocx , sa descrption est donnée ici
Merci les gars,
les deux infos m'ont servis
j'ai trouvé mon bonheur![]()
Partager