2010-06-02 8 views
0

IDE: VS2005WinAPI CIniFile :: ReadFile() ne peut pas lire le fichier ini

est-il de toute façon de savoir pourquoi ReadFile() a échoué? Je ne peux pas trouver la raison pour laquelle certains INI ne peuvent pas être lus. Merci.

EDIT:

CIniFile iniFile; 
iniFile.SetPath("C:\\Services\\Server\\Server.INI"); 
if(iniFile.ReadFile()) 
    my code... 

Le programme ne fait jamais dans le cas bloc.

Et, désolé pour la confusion. J'utilise cette bibliothèque pour la classe CIniFile. Espérons que cette information aide à identifier le problème. http://www.codeproject.com/kb/cpp/cinifileByCabadam.aspx

EDIT2: J'ai trouvé la raison, c'est parce que certains des fichiers ini sont enregistrés en Unicode. Et c'est la raison pour laquelle ReadFile() échoue. Mais maintenant, la question est de savoir comment lire les fichiers ini Unicode.

+0

ajouter du code, avec un peu de chance quelqu'un pourrait repérer le problème. –

+0

exactement quel CIniFile voulez-vous dire? - Il n'y a pas de WinAPI CIniFile :: ReadFile AFAIK –

+0

@Anders, j'ai mis à jour mon post. S'il vous plaît voir si c'est assez clair, merci. – Stan

Répondre

1

Normalement GetLastError() devrait vous donner un numéro d'erreur pour rechercher

EDIT: Dans le projet CIniFile il semble y avoir aucun constructeur par défaut, essayez la place CIniFile (string const IniPath), à savoir

CIniFile iniFile("C:\\Services\\Server\\Server.INI"); 
if(iniFile.ReadFile()) 

EDIT2: OK, vous devrez modifier le code au lieu d'utiliser l'utilisation fstream wfstream - see

Questions connexes