Преобразование из ANSI в Unicode - PullRequest
2 голосов
/ 09 февраля 2010

Я использую Visual Studio .NET 2003 и пытаюсь преобразовать программу, написанную исключительно в символы ANSI, в независимую от Unicode / многобайтовых символов.

Программа имеет функцию обратного вызова pcap_loop, называемую «got_packet». Это определяется как

void got_packet(u_char *user, const struct pcap_pkthdr *header, const u_char *cpacket)
{
   USES_CONVERSION;
   _TUCHAR *packet;
   packet = A2T(cpacket);
   ...
} 

Однако я получаю сообщение об ошибке

error C2440: 'type cast': cannot convert from 'const u_char *' to 'ATL::CA2WEX<>'

Как это исправить?

1 Ответ

1 голос
/ 09 февраля 2010

Я предполагаю, что ATL не знает u_char, поэтому он не может выбрать правильное преобразование. Попробуйте это:

packet = A2T((char *)cpacket);

Для получения дополнительной информации см.

...