1

bonjour,

je fais un prog qui recherche des fichiers. je bloque pour mettre mes résultats dans une liste que je pourrai afficher à l'aide de DrawStr.
voici mon bout de code où dossier[pos] indique le dossier dans lequel je cherche:
i = 0;
SymPtr = SymFindFirst (SYMSTR (dossier[pos]), FO_SINGLE_FOLDER);
while (SymPtr)
{
  strcpy (names[i++], SymPtr->name);
  SymPtr = SymFindNext ();
}

2

Les noms de fichiers ne sont pas stockes exactement comme des chaines de caractere C. il faut que tu utilises SymCpy0.
Sinon, a part des possibles pb d'allocation de memoire de names qui n'est pas code ici, il n'y a pas d'erreur.

3

hibou :
Les noms de fichiers ne sont pas stockes exactement comme des chaines de caractere C. il faut que tu utilises SymCpy0.

Non non, SymPtr->name est une chaine de caracteres C classique... Le code est bon je pense, le pb est soit dans la déclaration des variables, soit completement ailleurs dans le code...
aleph> Qu'est-ce qui ne marche pas ? Si tu remplaces tout ton bout de code par
names[0] = dossier[pos];
i = 1;

est-ce que ca fait ce que tu veux ?

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

4

Non non, SymPtr->name est une chaine de caracteres C classique...

il n'est pas _garanti_ qu'elle soit finie par un caractère nul, vu qu'elle ne fait que 8 octets (dans le cas d'un nom de fichier de 8 caractères, il n'y a pas la place de mettre le 0 de fin de chaine)
l'octet suivant est souvent (tout le temps ?) à 0, ce qui fait qu'on a une chaine C valide... mais rien ne garanti que ça sera toujours le cas (notamment, il peut y avoir des problèmes avec les futurs AMS, non ? )
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

5

il y avait des pbs avec certains vieux kernels qui utilisaient l'octet suivant comme flag, mais a part ca l'octet est normalement tjs nul... apres oui bien sur un futur AMS pourrait aussi changer ca en principe, mais bon c'est vraiment utilisé par bcp bcp de programmes, et y a plein d'autres choses qui pourraient en principe changer avec un futur AMS qui seraient bien plus chiantes a corriger... (la au pire un grep peut retrouver quels sont les endroits a corriger)

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

6

la au pire un grep peut retrouver quels sont les endroits a corriger

en ayant les sources, seulement...
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

7

et si quelque chose doit foirer, ca foirera (C)

8

j'ai découvert le site TIWiki et j'ai trouvé un exemple de code pour afficher tous les fichiers. après l'avoir compris et reprogrammé pour mon utilisation personnelle, il se trouve, au vu de la rapidité, que je n'ai plus besoin d'enregistrer les fichiers dans un string.
Merci à tous pour votre aide.