Je suis une erreur de compilation étrange quand je suivais le MSDN document à utiliser CA2W pour convertir des chaînes big5 en chaînes unicode dans Visual Studio 2005.CA2W m'a donné un « AtlThrowLastWin32»: identifiant introuvable » erreur
C'est la Code je l'ai écrit:
#include <string>
#include <atldef.h>
#include <atlconv.h>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
string chineseInBig5 = "\xA4\xA4\xA4\xE5";
ATL::CA2W(chineseInBig5.c_str());
return 0;
}
L'erreur de compilation: erreur C3861: 'AtlThrowLastWin32': identificateur non trouvé
Je ne sais pas comment cela pourrait se produire. Le document of AtlThrowLastWin32 montre que atldef.h est requis, mais je n'ai pas trouvé la déclaration de AtlThrowLastWin32 dans atldef.h.
MSDN (sur la page vous avez lié) dit: > Exigences > fichier d'en-tête: AtlBase.h, Atlconv.h (déclarée dans Atlconv.h) –
Merci à Logan Capaldo. J'ai finalement trouvé pourquoi j'étais confus. Le document de CA2AEX (http://msdn.microsoft.com/en-us/library/z0d7hetw(VS.80).aspx) mentionne seulement "Requirements Header: atlconv.h" – user95319