Форум программистов, компьютерный форум, киберфорум
C++: WinAPI
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.93/15: Рейтинг темы: голосов - 15, средняя оценка - 4.93
26 / 26 / 8
Регистрация: 14.05.2011
Сообщений: 242
1

При получении текста из буфера обмена не распознаются русские символы

03.11.2013, 00:07. Показов 2959. Ответов 4
Метки нет (Все метки)

текст из буфера обмена получаю таким образом:
C++
1
2
3
4
5
6
7
8
9
char* buffer;
if(OpenClipboard(NULL))//открываем буфер обмена
{
    HANDLE hData = GetClipboardData(CF_TEXT);
    char* chBuffer= (char*)GlobalLock(hData);
    buffer = chBuffer;
    GlobalUnlock(hData);
    CloseClipboard();
}
при получении английских символов все нормально, а вот русские кракозябрами, а точнее знаками вопроса, что можно сделать?

Добавлено через 30 минут
заметил такую особенность... если копировать русский текст при русской раскладке все нормально, а вот если при английской кракозябры....
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.11.2013, 00:07
Ответы с готовыми решениями:

Неверная кодировка при отправке текста буфера обмена на почту
копирую русский текст в буфер с отправкой на почту - приходят вопросительные знаки. что не так?

Копирование текста из буфера обмена
Добрый день! Подскажите, как копировать текст из буфера обмена? Для копирования в буфер...

Вставка текста из буфера обмена
Всем привет! Появилась одна непроходимая задачка, пока что. В чем суть: Программно копируется...

HTA: получение текста из буфера обмена
Есть упрощенный скрипт HTA, в котором чтение из буфера вызывает ошибку: <html> <head>...

4
121 / 121 / 32
Регистрация: 04.03.2013
Сообщений: 370
03.11.2013, 00:40 2
Цитата Сообщение от vladoscom93 Посмотреть сообщение
заметил такую особенность... если копировать русский текст при русской раскладке все нормально, а вот если при английской кракозябры....
Бред. Все нормально работает.
0
26 / 26 / 8
Регистрация: 14.05.2011
Сообщений: 242
03.11.2013, 01:16  [ТС] 3
Цитата Сообщение от FreeMan108 Посмотреть сообщение
Бред. Все нормально работает.
Название: R0VWb3G5.png
Просмотров: 234

Размер: 2.1 Кб

Добавлено через 17 минут
сделал так:
C++
1
2
3
4
5
6
7
8
9
if(OpenClipboard(NULL))//открываем буфер обмена
                    {
                        HANDLE hData = GetClipboardData(CF_UNICODETEXT);//извлекаем текст из буфера обмена
                        TCHAR* chBuffer= (TCHAR*)GlobalLock(hData);//блокируем память
                        buffer = chBuffer;
                        GlobalUnlock(hData);//разблокируем память
                        CloseClipboard();//закрываем буфер обмена
                    }
                    MessageBox(hWnd, buffer, L"", MB_OK);
все нормально стало работать, но хотелось бы все равно в мультибайтовой кодировке это осуществить, есть предложения?
0
121 / 121 / 32
Регистрация: 04.03.2013
Сообщений: 370
03.11.2013, 01:38 4
Так у Вас же оно итак в мультибайтовой кодировке UNICODE.
0
Ушел с форума
Эксперт С++
16426 / 7400 / 1186
Регистрация: 02.05.2013
Сообщений: 11,637
Записей в блоге: 1
03.11.2013, 10:31 5
Цитата Сообщение от vladoscom93 Посмотреть сообщение
все нормально стало работать, но хотелось бы все равно в мультибайтовой кодировке это осуществить, есть предложения?
Оставить этот вариант. multibyte забыть, как страшный сон, потому что с ними
всегда будут проблемы на других локализациях или региональных настройках.
Кстати, Microsoft в последних версиях Visual Studio уже начала потихоньку
отказываться от их поддержки.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.11.2013, 10:31

Корректная вставка текста из буфера обмена
Те, кто уже сталкивался с буфером обмена в Дэльфи 7 дожен представлять себе эту проблему: на входе...

Вставка текста из буфера обмена Windows
Уважаемые форумчане ситуация следующая: MS Access 2007 В базе есть свое контекстное меню...

Вставка текста из буфера обмена QClipboard
Привет ребят! У меня на форме есть LineEdit в который выводится содержимое буфера. Вопрос: хочу...

Импорт текста из буфера обмена в таблицу Excel
Доброго здоровья всем! :), Нужна ваша помощь. Делаю экспорт данных из программы через буфер обмена....

Запись текста из буфера обмена в файл (вариант с mshta)
Собственно, рабочий код у меня есть. Удобная фишка для контекстного меню всех файлов: cmd /U /c...

Изменить код для вставки текста из буфера обмена
День добрый! Не знаю ни один из этих языков, а powershell есть не у всех (win XP), хотелось бы...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.