Seulement, cette DLL n'enregistre que sur un fichier spécifique
(c:\raw.txt). Et j'aimerais à la place de cela avoir une fenêtre type
"enregistrer sous/ ouvrir etc." (common controls à ce que j'ai
entendu) qui s'ouvre pour demander l'emplacement.
Je suis sous VC++ TOOLKIT 2003 car il était écrit de compiler la DLL
avec ce soft, et que je compile mon .cpp avec la ligne de commande : cl
/LD maDLL.cpp maDLL.def (car y'a un fichier .def qui sert à
l'exportation des noms des fonctions de la DLL à ce que j'ai compri).
Donc voila, n'importe quelle piste me serai d'une très grande utilité.
Une derniere chose : j'ai essayé d'utilisé commctrl.h ou commdlg.h de
mon VC++6.0 (qui est aussi installé) mais ca me pond des erreurs de
compilation.
FleX2009
Messages postés22Date d'inscriptionmercredi 15 décembre 2004StatutMembreDernière intervention 5 mai 2005 10 janv. 2005 à 02:20
Wouah! Il est dur ton exemple lol ^^
Mais c'est bon, j'ai enfin reussit en fait il y avait une erreur dans
une des varible je pense. Car pour faire fonctionner, j'ai tout
simplement tout recodé mais plus dans une fonction mais directement
dans le code principale.
Donc ca donne :
OPENFILENAME ofn;
FILE *file;
char filename[MAX_PATH] = "";
ZeroMemory(&ofn, sizeof(ofn));
ofn.lStructSize = sizeof(ofn);
ofn.hwndOwner = NULL;
ofn.lpstrTitle = "Enregistrer sous...";
ofn.lpstrFilter = "SR Model (*.srm)\0*.srm\0Tous les fichiers
(*.*)\0*.*\0\0";
j'obtient une erreur de "linking", mais pourant d'après le document
vers lequel ma renvoyé BruNews, j'ai inclu Windows.h (j'ai même ensuite
inclu Comdlg32.h et mit dans mon repertoire comdlg32.lib). Voici
l'erreur :
Creating library msSelfish.lib and object msSelfish.exp
msSelfish.obj : error LNK2019: unresolved external symbol _GetSaveFileNameA@4 re
ferenced in function "void __cdecl GetName(char *)" (?GetName@@YAXPAD@Z)
FleX2009
Messages postés22Date d'inscriptionmercredi 15 décembre 2004StatutMembreDernière intervention 5 mai 2005 9 janv. 2005 à 23:39
Je ne sais pas comment vous remerciez vous deux, j'en ai limite les larmes à l'oeil.
Ca marche enfin! Enfin presque...
La boite de dialogue s'ouvre, mais lorsque je fait enregistre, que je
recupere le chemin, et que je crée un fichier, celui-ci se retrouve
bien dans le bon répertoire mais son nom devient un seul charactère au
"hasard" (sans doute un char non affecté?). En fait je pense que cela
vient de ma conversion du pointeur vers char en tableau de char :
char Chemin;
GetName(&Chemin);
char Chemin2[sizeof(Chemin)];
strcpy(Chemin2, &Chemin);
FILE *file = fopen (Chemin2, "wt+");
Si vous me trouvez une solution pour ca aussi, je vous promer de ne plus vous ennuyer...
FleX2009
Messages postés22Date d'inscriptionmercredi 15 décembre 2004StatutMembreDernière intervention 5 mai 2005 10 janv. 2005 à 00:19
Oui c'est vraie que je suis une grosse loose en C. J'ai juste lu
quelque tuto. En fait je suis habitué au Pascal/Delphi donc j'ai
vraiment du mal.
Sinon pour revenir au char, j'ai changé mon code :
char Chemin[200];
GetName(Chemin);
FILE *file = fopen (Chemin, "wt+");
Mais j'ai toujours la même erreur, c'est-à-dire que le fichier que
j'enregistre est dans le bon répertoire mais son nom n'est composé que
d'un char "au hasard"...