Показать сообщение отдельно
  #1  
Старый 19.02.2012, 12:54
serg36 serg36 вне форума
Прохожий
 
Регистрация: 19.02.2012
Сообщения: 4
Репутация: 10
По умолчанию Проблема с сортировкой по кириллице в ClientDataSet из-за Windows 7

Знатоки, подскажите!

Задаю сортировку по алфавиту в ClientDataSet:

IndexFieldNames := 'Letter';

Когда в поле Letter латиница или цифры, на экран в гриде выводится отсортированным по возрастанию.
Когда в поле Letter кириллица - при вводе букв по порядку сортирует с завидным постоянством
Ч-Б-А-В-Д-Г-Е-Ж-З-Р-Й-И-К-Л-Н-М-О-П-С-У-Т-Ф-Ц-Х-Ш-Я-Ю-Ъ-Щ-Ы-Ь-Э
Проверял много раз - эффект стабилен.

Этот эффект наблюдается на компьютере 1 с Windows 7 SP1 + Delphi XE2.
Тот же самый проект на компьютере 2 с Windows XP SP3 + Delphi XE2 ведет себя нормально, сортировка правильная.

Более того. Откомпилированный на "неправильном" компьютере 1 проект на компьютере 2 сортирует верно и наоборот: откомпилированный на "правильном" компьютере 2 проект на компьютере 1 сортирует неправильно.

Последний эксперимент. Проверяю откомпилированные проекты на компьютере 3 с Windows 7 SP1 без Делфи. Сортировка нарушена в обоих проектах.

Проверяю на компьютере 4 с Windows XP SP3 - все нормально.

Получается, здесь проблема c Windows 7! Сортировка нарушается именно под ней.

Подскажите, в чем может быть дело, как починить?
Ответить с цитированием