|
0 / 0 / 0
Регистрация: 12.02.2014
Сообщений: 5
|
|
Неверные кодировоки при вводе текста (DLL)12.02.2014, 15:59. Показов 1488. Ответов 8
Метки нет (Все метки)
Здравствуйте. Проблема следующая: Написана dll внушительных размеров с большим количеством форм, на формах используются компоненты DevExpress. При старте dll из одной программы все компоненты работают должным образом, а при старте из другой программы русский текст который вводится в любые текстбоксы, вводится в другой кодировке(только в раскладке RU). Таким образом при вводе текста "АБВ" вводится "?0@". Если делать копипаст то всё вставляется в правильной кодировке. При этом на некоторых формах всё работает как надо. Проблема появилась совсем недавно, раньше работало всё как надо. Не могу найти никаких зависимостей, что за шайтан? Помогите решить проблему...
0
|
|
| 12.02.2014, 15:59 | |
|
Ответы с готовыми решениями:
8
При программмирование калькулятора выдает ошибку при вводе текста |
|
13116 / 5897 / 1708
Регистрация: 19.09.2009
Сообщений: 8,809
|
||
| 12.02.2014, 16:26 | ||
|
1
|
||
|
0 / 0 / 0
Регистрация: 12.02.2014
Сообщений: 5
|
|
| 12.02.2014, 16:33 [ТС] | |
|
Вызывающее приложение вроде проектировалось в той-же локали что и наше.Странно, но чуть ранее(недели две назад) всё работало как надо... И возможно ли для своей dll принудительно задать собственную локаль?
0
|
|
|
13116 / 5897 / 1708
Регистрация: 19.09.2009
Сообщений: 8,809
|
||
| 12.02.2014, 16:44 | ||
|
А система не менялась? Может ОС переустановили? Или на другом компе теперь приложение запускается? Или может на ОС поставлены обновления?
1
|
||
|
0 / 0 / 0
Регистрация: 12.02.2014
Сообщений: 5
|
||
| 12.02.2014, 16:54 [ТС] | ||
|
Добавлено через 7 минут SetLocaleInfo() не помогает...
0
|
||
|
13116 / 5897 / 1708
Регистрация: 19.09.2009
Сообщений: 8,809
|
|
| 12.02.2014, 17:15 | |
|
Такой вызов надо добавить в каждую функцию DLL, которая показывает текстовые данные. Там надо сделать так - вначале функции DLL определить исходную локаль через GetLocaleInfo(), потом установить своё значение через SetLocaleInfo(). И перед выходом из функции вернуть исходную локаль через ещё один вызов SetLocaleInfo(). И ещё обернуть в try-except-end. Чтобы в случае исключения в функции DLL локаль была восстановлена на исходную.
Добавлено через 2 минуты На время проверки, конечно, достаточно такие вызовы добавить только в те функции, которые будут использоваться при этой самой проверке. Добавлено через 2 минуты MadCoder, а можешь кинуть сюда пример испорченного текста? Желательно, чтобы там было несколько слов.
1
|
|
|
0 / 0 / 0
Регистрация: 12.02.2014
Сообщений: 5
|
||
| 13.02.2014, 08:12 [ТС] | ||
|
Добавлено через 4 минуты Пример вводимого текста: Вводим - "Съешь еще этих мягких французских булочек", получаем - "!J5HL 5I5 MB8E <O3:8E D@0=FC7A:8E 1C;>G5:"
0
|
||
|
13116 / 5897 / 1708
Регистрация: 19.09.2009
Сообщений: 8,809
|
||
| 13.02.2014, 12:50 | ||
Сообщение было отмечено MadCoder как решение
Решение7-bit ASCII → CP866 → ISO-8859-5 7-bit ASCII → CP437 → ISO-8859-5 Но с потерей первого символа. MadCoder, к сожалению, я сейчас не имею чёткого представления, что здесь конкретно можно предпринять...
1
|
||
|
0 / 0 / 0
Регистрация: 12.02.2014
Сообщений: 5
|
|
| 13.02.2014, 13:24 [ТС] | |
|
Спасибо большое за информацию. Буду разбираться, как справиться с этой проблемой...
0
|
|
| 13.02.2014, 13:24 | |
|
Помогаю со студенческими работами здесь
9
Ошибка при вводе текста Изменение текста при вводе
Почему при вводе русского текста после cout<< при запуске программы выписывает какие то каракули Автоматическое форматирование при вводе текста Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ВВЕДЕНИЕ
Выполняя задание на управление насосной группой заполнения резервуара,. . .
|
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
|
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|