Associer des formats images à un programme

Narno - 19 mars 2001 à 20:10
 laurent - 3 mai 2001 à 02:52
Salut à tout le monde,
c'est la première fois que je poste un mail sur vbfrance car jusqu'à maintenant je résolvais tout mes problèmes en lisant les mails de la communauté vb.
Bref passons au problème. Voilà, je suis en train de programmer un petit logiciel pour visualiser les image à la manière de ACDSee Classic et je souhaiterais implémenter 2 Options :
- tout d'abord, une option permettant d'associer un ensemble de formats de fichiers images à mon programme (*.bmp;*jpg... que vb6 est capable de gérer) sous forme de case à cocher par exemple.
- ensuite, une fois que l'utilisateur à associé le format *.jpg (par exemple) au programme, comment faire pour "récupérer" le chemin complet d'une image sur laquelle il à dblcliqué et l'afficher dans un contròle 'Image' de mon programme.

Merci d'avance !

Narno

P.S: Quand la béta 1 de 'LASee' sera terminé (disons utilisable...), je ne manquerai pas de fournir le code source !

1 réponse

-------------------------------
Réponse au message :
-------------------------------

Salut à tout le monde,
c'est la première fois que je poste un mail sur vbfrance car jusqu'à maintenant je résolvais tout mes problèmes en lisant les mails de la communauté vb.
Bref passons au problème. Voilà, je suis en train de programmer un petit logiciel pour visualiser les image à la manière de ACDSee Classic et je souhaiterais implémenter 2 Options :
- tout d'abord, une option permettant d'associer un ensemble de formats de fichiers images à mon programme (*.bmp;*jpg... que vb6 est capable de gérer) sous forme de case à cocher par exemple.
- ensuite, une fois que l'utilisateur à associé le format *.jpg (par exemple) au programme, comment faire pour "récupérer" le chemin complet d'une image sur laquelle il à dblcliqué et l'afficher dans un contròle 'Image' de mon programme.

Merci d'avance !

Narno

P.S: Quand la béta 1 de 'LASee' sera terminé (disons utilisable...), je ne manquerai pas de fournir le code source !

Cela me parait assez ardu comme probleme et d'autre par ce n'est pas tres clair

Si tu veux que ton programme reagisse lorsqu'un utilisateur
dblclick dans l'explorateur windows le seul moyen est de passer par la base de registre de windows

Tu peux trouver les APIs d'acce a la base de registre dans le modele de code frmAbout fournit avec vb6
ton programe doit modifier l'entre HKEY_CLASS_ROOT/.jpg par exemple pour l'associer a ton appli. ne pas oublier de sauve l'encienne valeur.
Sous cette clé tu a une donne texte qui s'appele Défault
tu doit lui donne une valeur (ex. LASee) qui crera l'association
par defaut c'est paint.picture
Ensuite il faut qu'il existe la structure de cle suivante HKEY_CLASS_ROOT/LASee
HKEY_CLASS_ROOT/LASee/DefaultIcon
ici la valeur de la donne Défault doit specifier le ficher
exe ou dll (chemin d'acces comple) contenant l'icone a associer a ce type de fichier
suivit d'une virgule suivit du numero d'icone dans le fichier
HKEY_CLASS_ROOT/LASee/Shell
HKEY_CLASS_ROOT/LASee/Shell/open
HKEY_CLASS_ROOT/LASee/Shell/open/command
ici la donné default doit contenir le prog a executer (chemin d'acce complet) suivit de "%1" guilleme comprit

ceci fait lorque tu dblclickera sur un fichier ainsi associer windows lancera automatiquement ton appli en lui passant en argument de la ligne de commande le nom du fichier sur lequel ta dblclicker argument que tu peut recuperer avec la fonction command
0
Rejoignez-nous