2009-03-07 1 views

ответ

0

Наверное, нет. Скорее всего, вам нужно будет преобразовать вашу широкую строку символов в какой-то другой формат, например, UTF7 или что-то еще, и отправить это через провод, а затем конвертировать обратно с другой стороны.

+0

это очень плохо. глядя на Unicode как на будущее, должно было быть что-то обрабатывать данные Unicode –

+0

@Manav: UTF7 и UTF8 _are_ Unicode; они просто не UTF16 (или UCS2). –

1

Как еще один ответ, WSABUF использует char * для представления байтов.

TCP обеспечивает поток байтов, который вам решать, чтобы решить, из чего состоят эти байты. Таким образом, до тех пор, пока вы предоставляете какое-то протокольное оформление, чтобы вы могли прочитать правильное количество данных в дальнем конце, просто выделите свою широкую строку на char *.

Если вы должны были следовать своему вопросу до логического завершения, вы должны спросить, где WSABUF, который поддерживает изображения PNG, или WSABUF, который поддерживает вашу любимую структуру данных. Вам нужно перевести данные, которые у вас есть на поток байтов (который в случае широкой символьной строки - просто кадрирование и кастинг).