Vadim Хорошо, тогда попробуйте провести эксперимент. Откмпилируйте и запустите свою программу из под IDE Lazarus. Вывод OutputDebugString можно увидеть в журнале событий (меню Вид/Окна отладки/Журнал событий) (а если у Вас не будет вывода - в свойствах (параметрах) этого Журнала событий поставьте галку "Вывод"). Ещё то же самое вы увидите если откроете окно "Вывод отладчика" Просто там этот вывод предваряется словом "&warning" и его нужно найти среди множество всех сообщений отладчика. Пожалуйста, сообщите результат. А то мне придётся либо искать Lazarus с отладчиком версии 7.4 (и я, как и Вы не зню будет ли от этого эффект)
Добавлено спустя 4 минуты 48 секунд:Так стоп! Вы пользуетесь Lazarus или Free Pascal? У меня в Lazarus используется Free Pascal 2.6.0 Может в этом дело?
Добавлено спустя 14 часов 27 минут 43 секунды:В обшем так. Пролема всё-таки не решаема в принципе. Можно подобрать или написать ф-ю перекодировки символов из UTF8 в ANSI (стандартная UTF8ToAnsi так же как и UTF8Decode UTF8Encode - результата не дают) но это не главная проблема (я просто глубже не копал, а вообще это решается и не сложно) А проблема все-таки в IDE Lazarus она отказываится выводить резальтат (вывод GDB) в национальной кодировке. Выводит кодами всё что выше 127 да и многие символы ниже тоже выводятся кодами (это и писал
Mr.Smart). Это очень странно учитывая что сама IDE сделана под национальные стандарты (у меня, например - русская) и это очень хорошо. Но несоответствие есть.
В общем всем спасибо, тема закрыта. "Претензии" к разработчикам IDE Lazarus. Недоработка однако
Добавлено спустя 5 часов 22 минуты 40 секунд:P.S. Для нормального отображения русских букв при выводе GDB в окне DOS нужно использовать ф-ю UTF8ToCP866 из модуля LConvEncoding стандартной поставки Lazarus. Хотя это и не очень поможет т.к. сама среда всё равно их не отображает (отображает лиш коды).