Bonjour,
Je suis entrain de faire un petit serveur FTP tournant sous Windows.
Pour lister les fichiers dans les répertoires, j'utilise "ls" pour Windows, ça me permet d'avoir un affichage comme sur un serveur FTP sous Unix.
J'ai un soucis avec les dossiers et fichiers comportant des caractères accentués. Mon programme en C renvoi les caractères en sortie de "ls" vers le client FTP, sur le client les caractères ne sont pas affichés corectement, donc impossible de renvoyer au serveur le bon nom de fichier.
Je ne sais pas quel est le type de codage des caractères en sortie de ls (cp437 ?), le mieux serait de convertir les caractères en UTF-8 avant de l'envoyer au client et faire l'inverse en retour.
En considérant que les caractères étaient des "wide chars", j'ai essayé d'utiliser le fonction WideCharToMultiByte :
http://msdn2.microsoft.com/en-us/library/ms776420.aspx
Mais sans succès, tous les caractères sont illisibles sur le client, donc ce ne doit pas être des wide chars.
Je cherche donc à savoir quelle fonction je pourrais utiliser pour convertir le codage des noms de fichier, de sorte que mes clients puissent communiquer avec le serveur.
Merci pour votre aide!
Message édité par XK le 29-10-2007 à 13:31:12