BJR! importer un fichier dans mon programme

Résolu
Fullnet Software Messages postés 90 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 27 août 2006 - 31 juil. 2004 à 15:40
cboulas Messages postés 2641 Date d'inscription mercredi 2 juin 2004 Statut Membre Dernière intervention 8 janvier 2014 - 24 sept. 2004 à 22:38
Bonjour! (hum...) Je voudrais importer un fichier dans mon programme qui est un genre d'éditeur de fichier...

quand on dblclique sur le fichier FNS (fait maison avec le registre...) il ouvre automatiquement mon programme mais il nouvre pas le fichier comme tel il ne fait qu'ouvrir l'éditeur...

en touka, jaimerais avoir votre avis là dessus!

p-s: je ne tarderais pas a mettre mon prog sur vbfrance lorsque jaurais terminé!!!

bye.
----------------------------------------------------------------
Une tarte au pommes sans pommes n'est pas une tarte aux pommes.... mais une tarte à... RIEN!

12 réponses

cs_rene38 Messages postés 1858 Date d'inscription samedi 29 juin 2002 Statut Membre Dernière intervention 17 octobre 2013 11
1 août 2004 à 02:41
En détails :
Démarrer > Exécuter> Regedit => OK

Dans Regedit :
Clic droit sur HKEY_CLASSES_ROOT
Nouveau => Clé
Renommer immédiatement .fns à la place de Nouvelle clé #1
(ne pas oublier le point)
Double clic sur (Défaut) en haut à droite
Dans Données de la valeur, écrire Fichier fns => OK

Clic droit sur HKEY_CLASSES_ROOT
Nouveau = > Clé
Renommer immédiatement Fichier fns à la place de ...
Clic droit sur Fichier fns
Nouveau => Clé
Renommer immédiatement Shell à la place de ...
Clic droit sur Shell
Nouveau = > Clé
Renommer immédiatement Open à la place de ...
Clic droit sur Open
Nouveau => Clé
Renommer immédiatement Command à la place de ...
Double clic sur (Défaut) en haut à droite
Dans Données de la valeur, écrire
"C:\Program Files\Dossier\TonProg.exe" " %1"
en remplaçant évidemment C:\Program Files\Dossier\TonProg.exe
par le chemin de ton application.
Ne pas oublier d'écrire les guillemets.
=> OK
Fermer Regedit
----------------------
Dans la procédure de démarrage de ton programme (Form_Load de la form de démarrage ou Sub Main)

Dim Fichier_à_Ouvrir As String
Fichier_à_Ouvrir = Command$
' La variable Fichier_à_Ouvrir contient le chemin du fichier
' sur lequel tu as fait un double clic
If Fichier_à_Ouvrir <> "" Then
' ouverture du fichier et traitement par exemple
Open Fichier_à_Ouvrir For Input As #1
' ..........
Else
' TonProg.exe a été lancé directement
End If
3
cs_frop01 Messages postés 1352 Date d'inscription lundi 27 octobre 2003 Statut Membre Dernière intervention 19 novembre 2008 2
31 juil. 2004 à 15:49
Ta question n'est pas compréhensible!!

MSN : cyberscorp2004@msn.com
Qui s'y frotte, s'y pique .
0
Fullnet Software Messages postés 90 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 27 août 2006 1
31 juil. 2004 à 16:03
çorrection:

comment ouvrir un fichier dans mon programme sans qu'il ne fasse qu'ouvrir mon programme sans réagir?

bon ben le point d'interrogation est la alors...
----------------------------
seriez-vous capable de répondre a une autre question?:

Dans une toolbar, on ouvre les propriétés avec click droit et properties mais, comment fait-on pour changer la valeur 'mouseicon' dans la catégorie image?

-----------------------------------------
Une tarte au pommes sans pommes n'est pas une tarte aux pommes.... mais une tarte à... RIEN!
0
cs_rene38 Messages postés 1858 Date d'inscription samedi 29 juin 2002 Statut Membre Dernière intervention 17 octobre 2013 11
31 juil. 2004 à 18:13
Bonjour
"comment fait-on pour changer la valeur 'mouseicon' dans la catégorie image?"

Tu cliques sur Parcourir et tu vas chercher le fichier graphique choisi (.bmp, .ico, .cur, ...)
------------------------------------
"comment ouvrir un fichier dans mon programme sans qu'il ne fasse qu'ouvrir mon programme sans réagir?"

Il faut utiliser la fonction Command
0

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

Posez votre question
MadM@tt Messages postés 2167 Date d'inscription mardi 11 novembre 2003 Statut Membre Dernière intervention 16 juillet 2009 1
31 juil. 2004 à 18:49
Il faut envoyer une commande à ton prog quand tu le lance :
déjà quand tu va executer ton programme au lieu de mettre juste le nom du programme, tu va mettre un truc du style : Shell "Nom_du_prog Ligne_de_commande"
(l'espace est nécessaire)
et ça marche si tu lance le programme avec n'importe quoi.

Ensuite dans le code de ton prog, il faut interpreter la ligne de commande, que tu récupère avec command
donc si c'est un fichier en commande, tu récupère le nom du fichier simplement comme ça : NomFichier$ = Command
et tu fait en sorte que ton programme ouvre le fichier...

si tu ne m'a pas compris, envoie moi un message je te ferai un exemple...

@ ++

MadMatt
0
Scalpweb Messages postés 1467 Date d'inscription samedi 13 mars 2004 Statut Membre Dernière intervention 5 mai 2010 4
1 août 2004 à 00:43
Si jai bien compris, tu veux faire un truc comme word, par exemple : lorsque l'on dbl-clique sur un fichier .doc, ça ouvre automatiquement word avec le contenu du fichier inséré dans l'éditeur...
C'est ça que tu veux faire donc ?

Dans ta base de registre, il suffit de mettre en truc du genre :

tonprog.exe -d

Ensuite, dans le form_load de ton prog, tu met :

d = command

if d = "-d" then

'la tu mets ta routine d'ouverture du fichier
'sachant que le chemin d'accès actuel
'accesible via Dir sera le chemin d'accès du
'fichier sur lequel on aura dbl-cliqué

end if

Voilà
Si jai pas compris, corrige moi.
0
Scalpweb Messages postés 1467 Date d'inscription samedi 13 mars 2004 Statut Membre Dernière intervention 5 mai 2010 4
1 août 2004 à 00:44
P-S : à la place de -d, tu peux mettre ce que tu veux...
0
Scalpweb Messages postés 1467 Date d'inscription samedi 13 mars 2004 Statut Membre Dernière intervention 5 mai 2010 4
1 août 2004 à 12:49
Oui, c'est bien mieux comme ça...
0
MadM@tt Messages postés 2167 Date d'inscription mardi 11 novembre 2003 Statut Membre Dernière intervention 16 juillet 2009 1
1 août 2004 à 14:48
Bah oui mais si tu touche au registre, déjà c'est un ptit peu risqué puisqu'on ne sais jamais comment est le registre de l'autre, mais aussi il devra faire cette manip sur tout les ordi ou tu veut faire marcher ton prog... c'est risqué et chiant alors qu'avec une ligne de commande...
0
cs_rene38 Messages postés 1858 Date d'inscription samedi 29 juin 2002 Statut Membre Dernière intervention 17 octobre 2013 11
2 août 2004 à 01:32
Bonjour
On peut remplacer toute la partie :
---------------------------------------------------Démarrer > Exécuter> Regedit => OK
.....................
Fermer Regedit
---------------------------------------------------
par :
Créer un fichier texte (avec Notepad par exemple) contenant :
----------------------------------
REGEDIT4

[HKEY_CLASSES_ROOT\.fns]
@="Fichier fns"

[HKEY_CLASSES_ROOT\Fichier fns\Shell\Open\Command]
@="C:\\Program Files\\Dossier\\TonProg.exe %1"
----------------------------------
Enregistrer ce fichier sous : EnregistreFNS.REG

Un double clic sur ce fichier =>
C'est fait (clés crées dans la base de registre).
++++++++++++++++++++++++++++
Pour annuler ces clés :
Fichier DésEnregistreFNS.REG
----------------------------------
REGEDIT4

[-HKEY_CLASSES_ROOT\.fns]

[-HKEY_CLASSES_ROOT\Fichier fns]
----------------------------------
0
MadM@tt Messages postés 2167 Date d'inscription mardi 11 novembre 2003 Statut Membre Dernière intervention 16 juillet 2009 1
2 août 2004 à 13:27
Ah cette dernière réponse est bien comme ça tu lance le fichier .Reg au premier lancement de ton prog sur un nouveau PC, comme ça tu peut installer et désinstaller ton prog... Je trouve ça super
0
cboulas Messages postés 2641 Date d'inscription mercredi 2 juin 2004 Statut Membre Dernière intervention 8 janvier 2014 16
24 sept. 2004 à 22:38
utiliser "COMMAND" de VB qui récupère les arguments, et l'argument serais le noms du fichier.
0
Rejoignez-nous