cs_LiBe444
Messages postés220Date d'inscriptiondimanche 7 septembre 2003StatutMembreDernière intervention 7 avril 2007
-
19 oct. 2004 à 20:57
cs_LiBe444
Messages postés220Date d'inscriptiondimanche 7 septembre 2003StatutMembreDernière intervention 7 avril 2007
-
20 oct. 2004 à 18:54
Bonjour,
La structure openfilename permet comme chacun sait d'ouvrir une fenêtre permettant d'obtenir un nom de fichier à enregistrer ou à charger.
Pour enregistrer des noms de fichier, MS se sert d'une variable nommée lpstrFile qui garde en mémoire ces noms...
...néamoins de manière mystérieuse ! Car au moment du résultat en sortie j'obtiens quelque chose qui est pour le moins étrange :
Exemple de liste: (CURRENTPATH est l'adresse actuelle)
"D:\..CURRENTPATH..."NULL (1ere 'ligne')
.....
"Gotan Project - Queremos Paz.mp3"NULL (21ème ligne)
"Gotan Project.mp3"NULL (22ème ligne)
"grace jones - i'm not perfect.mp3"NULL (23ème ligne)
Jusque là tout se passe convenablement.Mais là...
"Grace Jones - Pull Up to the Bumper (Larry Levan GarageD:\...CURRENTPATH"NULL (24ème ligne ->ERREUR)
...
"Taana Gardner - No Frills (Remix16 - Hotel Costes I - Flying Pop' s - Love The DJ.mp3)"NULL (48ème ligne ->ERREUR bien sûr)
Toutes les 24-25 lignes il pointe sur des caractères qui n'ont aucun rapport direct !
J'en appelle à votre BruNews, euh pardon, à votre génie. :)
cs_LiBe444
Messages postés220Date d'inscriptiondimanche 7 septembre 2003StatutMembreDernière intervention 7 avril 2007 20 oct. 2004 à 18:54
J'ai tout simplement commandé un GetOpenFileName(&ofn); et j'essaie d'afficher sur la sortie (en MessageBox) la valeur de &ofn.lpstrFile[i] .
C tout ce qu'il y a comprendre.
PS: pour reformuler le problème, j'ai conjecturé qu'il écrasait des caractères qui devraient s'y trouver et qu'il les remplace par un autre bout de chaine de caractères qui n'a rien à voir.
Car la ligne 25 vaut "- Funky Sensation.mp3"NULL alors qu'elle devrait valoir "Gwen Guthrie - Funky Sensation.mp3"NULL
PPS : J'appelle ligne i la chaine de caractère VISIBLE après avoir rencontré i-1 caratères NULL (ou plus communément '\0')