Получаю имя компа методом:
s:=GetEnvironmentVariableUTF8('COMPUTERNAME');
Имя компа содержит кирилицу. На выходе получаю кракозябры.
Метод SysUtils.GetEnvironmentVariable(CompName) возвращает что-то, похожее на utf16, но UTF16ToUTF8(s) тоже дает кракозябры.
Мне еще нужно и 'CLIENTNAME' получать...
Что можете посоветовать?
Лазарь 2.0.6
фпс 3.0.4
Ошибка в GetEnvironmentVariableUTF8
Модератор: Модераторы
tria писал(а):Что можете посоветовать?
Обновить Лазарь и компилятор.
tria писал(а):s:=GetEnvironmentVariableUTF8('COMPUTERNAME');
Имя компа содержит кирилицу. На выходе получаю кракозябры..
попробуй запустить программу без отладчика (вне лазаруса)
На данный момент есть поверие, что проблема "вернулась" из-за перехода на Gdb 8.5. На старом отладчике Gdb 7.3.5 всё было норм.
Обновлять Лазарус или компилятор не нужно.
Страницу модуля переведи в UTF-8 (правой клавишей на модуле -> "параметры файла" -> "кодировка")
или https://wiki.freepascal.org/Unicode_Sup ... 0.B8.D1.8E
или https://wiki.freepascal.org/Unicode_Sup ... 0.B8.D1.8E
Кодировка модуля utf8.
И таки да, без отладчика ошибки нет! Спасибо большое!
И таки да, без отладчика ошибки нет! Спасибо большое!
