Работаю на машине, где одна приклада требует обязательное переключение локали на US.
Подобрал комбинацию настроек, достаточных для этой приклады в Regional Settings:
— Formats — English (US)
— Location — United States
— Advanced\Language for non-Unicode programs — Russian
Паралелльно работаю с Delphi 7. Когда начинал делфевый проект, то настройки были такими
— Formats — Russian
— Location — United States
— Advanced\Language for non-Unicode programs — Russian
Формы содержат русские буквы ессесно.
Когда дельфя открыта с Formats — Russian, то формы в ней отображают русский нормально.
Когда дельфя открыта с Formats — English (US), то формы в ней отображают русский кракозябрами после первого сохрания.
Видно что DFMник до и после сохранения с Formats — English (US) отличается именно текстами с русским языком.
Чтобы при выполнении самой приклады русский нормально отображался я добился через SetThreadLocale. Но вот как теперь сказать дельфе, чтобы она не путалась при смени настроек и всегда сохраняла русские буквы одинаковым способом? Может где настройка есть?
Спасибо.
Re: Русские буквы в DMFе при смене локали становятся ???????
[Skip]
A>Чтобы при выполнении самой приклады русский нормально отображался я добился через SetThreadLocale. Но вот как теперь сказать дельфе, чтобы она не путалась при смени настроек и всегда сохраняла русские буквы одинаковым способом? Может где настройка есть?
A>Спасибо.
Нет таких настроек. При сохранении DFM, Delphi 7 конвертирует строки в utf-8, происходит конвертация с Ansi в Uncicode с использованием текущей локали Delphi. Другими словами чтобы Delphi не портила DFM они должны сохранятся и открываться в той же самой локали.
Можете, кстати, попробовать написать packadge и проинсталиковать ее в Delphi, в ней и вызвать SetThreadLocale.
Re[2]: Русские буквы в DMFе при смене локали становятся ????
Здравствуйте, artemisin, Вы писали:
A>Здравствуйте, Danchik, Вы писали:
D>>Можете, кстати, попробовать написать packadge и проинсталиковать ее в Delphi, в ней и вызвать SetThreadLocale.
A>А что это даст? как я понимаю вариантов, кроме как открывать Delphi под русской локалью, больше нет.
А это значит что вам не придется переключать локаль для того чтобы Delphi правильно сохраняла DFM. Других путей не вижу