TSaveDialog и имя пользователя кириллицей

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Ответить
vert
новенький
Сообщения: 19
Зарегистрирован: 11.11.2012 07:56:26

TSaveDialog и имя пользователя кириллицей

Сообщение vert »

Есть один TSaveDialog. Во время выбора места сохранения файла, когда выбираю Рабочий стол или Мои документы, появляется ошибка (на скриншоте). Дело, видимо, в кодировке, находил несколько обсуждений похожих проблем, в том числе и на этом форуме, но как решить проблему - не разобрался. Как её можно решить?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Ichthyander
энтузиаст
Сообщения: 701
Зарегистрирован: 04.04.2007 08:32:43
Откуда: Астрахань
Контактная информация:

Re: TSaveDialog и имя пользователя кириллицей

Сообщение Ichthyander »

TSaveDialog передает имя файла (property FileName) в кодировке UTF8. А Вы сохраняете с помощью процедуры, которая требует Ansi. К примеру TStringList.SaveToFile(AFileName). Поэтому должно быть примерно так: TStringList.SaveToFile(UTF8ToSys(SaveDialog.FileName))
vert
новенький
Сообщения: 19
Зарегистрирован: 11.11.2012 07:56:26

Re: TSaveDialog и имя пользователя кириллицей

Сообщение vert »

Ошибка появляется ещё до вызова процедуры, сразу после того, как я нажму выделенную кнопку.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Максим
энтузиаст
Сообщения: 599
Зарегистрирован: 27.07.2007 01:51:43
Откуда: Москва

Re: TSaveDialog и имя пользователя кириллицей

Сообщение Максим »

Отпишите в багтрекер.
Ответить