Problème lors d'une conversion CString -> char*
Bonjour,
j'ai une méthode, qui prend en paramètre une variable path, de type CString.
Code:
1 2
| int maClasse::maMethode(CString path)
{...} |
L'une des premières instructions est de convertir ce CString en char*.
J'ai donc, pour cela, utilisé
Code:
1 2
| char* filePath = (char*)path.GetBuffer(path.GetLength());
path.ReleaseBuffer(); |
Si je ne mets pas le (char*) devant path.getBuffer, j'ai une erreur de compil du genre
Citation:
error C2440: 'initializing' : cannot convert from 'wchar_t *' to 'char *'
Et le problème est que filePath, lechar* ainsi récupéré ne contient QUE le premier caractère de path. Par exemple, si path="C:\blabla\blabla\toto.xml" alors filePath="C". :evilred:
Des idées sur la raison de ce bug et sur la façon de le résoudre ?
Merci.