Здравствуйте, ma3ai, Вы писали:
M>на входе имеем unicode строки в РАЗНЫХ кодировках (англ., русский, немецкий итд.)
А что ты хочешь получить на выходе???
Если просто вывести unicode строку, то попробуй загонять БЕЗ какой-либо конвертации. Строки в VB итак unicode.
M>загоняю их в VB строку используя WinAPI WideCharToMultiByte M>в итоге получается какая-то ерунда с символами по умолчанию, а-ля “?????” M>(пробовал и “родную” для VB StrConv – результат тот-же)
M>по идее WideCharToMultiByte ДОЛЖНА конвертировать в соответствии с ПЕРЕДАВАЕМОЙ как параметр codepage, а получается что правильно всё работает если кодировка исходной строки СОВПАДАЕТ с установленной в системе (ACP, OEMCP & Co.)
Не совсем так.
CodePage
[in] Specifies the code page used to perform the conversion. This parameter can be given the value of any code page that is installed or available in the system.
Например, у меня в системе французкой и греческой кодировкой даже не пахнет — конвертация в эти кодировки не проходит.