Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме 85 тыс рублей в месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.05.2011, 08:45   #1
dacorp
Пользователь
 
Регистрация: 12.06.2010
Сообщений: 48
По умолчанию Кодировка в буфере обмена

Столкнулся с проблемой и не знаю почему она возникла и, соответственно, как её исправить.
Суть её такова:
Копирую текст из TMemo в буфер обмена для вставки в TWebBrowser:
Код:
Memo1.CopyToClipboard;
При запуске приложения русские символы нормально копируется и вставляется, но в рандомный на мой взгляд момент прога начинает копировать в буфер "краказябры", вместо кириллицы. В следствии чего приходится перезапускать приложение.
Кто-нибудь знает что это? почему это? и как исправить?

DS: Delphi7; OS: Windows7
dacorp вне форума Ответить с цитированием
Старый 14.05.2011, 11:02   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

В WinxXP с этим сталкиваюсь, когда в момент копирования не включена русская раскладка клавиатуры.
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 14.05.2011, 12:24   #3
GunSmoker
Старожил
 
Регистрация: 13.08.2009
Сообщений: 2,581
По умолчанию

Цитата:
почему это?
Потому что ты используешь Delphi 7 и поэтому.

Цитата:
и как исправить?
Варианты:
1. Забить. Переключать раскладку клавиатуры на русский перед копированием текста. Это не баг, это так должно быть.
2. Подправить Memo, чтобы оно копировало текст не в CF_TEXT, а в CF_TEXT + CF_LOCALE. А ещё лучше - в CF_UNICODETEXT.
3. Использовать Delphi 2009+ и навсегда забыть про эту (и многие другие) проблемы.
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
GunSmoker вне форума Ответить с цитированием
Старый 14.05.2011, 16:46   #4
dacorp
Пользователь
 
Регистрация: 12.06.2010
Сообщений: 48
По умолчанию

Спасибо за помощь!
P.S.: На счёт перехода на 2009 подумаю, хотя у меня в своё время были проблемы с CodeGear 2009.
dacorp вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме 85 тыс рублей в месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Написать программу с выводом сообщения о наличии символа в буфере клавиатуры. ricky987 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 12.03.2011 23:30
Выловить в буфере обмена даные с значением http -=Virus=- Помощь студентам 13 20.02.2010 23:14
Что у тебя в буфере обмена? Hollander Свободное общение 26 18.02.2010 16:55
Не сохраняется кодировка русского в буфере Шурин Общие вопросы Delphi 5 11.01.2009 15:38
переместить память из TMemoryStream в промежуточный буфер и в буфере найти слова Дядя Фёдор Общие вопросы Delphi 2 02.10.2007 00:20