Страница: 1 |
Страница: 1 |
Вопрос: Подскажите с кодировкой текста в Clipboard
Добавлено: 05.12.08 19:35
Автор вопроса: Petruha
Может кто сталкивался с проблемой, подскажите пожалуста как решить? Простая ситуация - есть одна кнопка и один текстбокс:
Private Sub Command1_Click()
Text1 = "Русские буквы АБВГДЕ"
Clipboard.SetText Text1
End Sub
При нажатии на кнопку текст копируется в буфер,
а когда его вставляю в Notepad или в IE, то латинские нормально всталяются, а вместо русских букв всталяются какието с ударениями символы, видимо несовпадает кодировка. Что делать ???
P.S. У меня VB6 sp1. Может чтото обновить надо?
Ответы
Всего ответов: 6
Номер ответа: 1
Автор ответа:
Father
Вопросов: 0
Ответов: 159
Профиль | | #1
Добавлено: 06.12.08 08:44
Попробуй перед копированием переключиться на русскую раскладку.
Clipboard.Clear
Text1 = "Русские буквы АБВГДЕ"
LoadKeyboardLayout "00000419", KLF_ACTIVATE
Clipboard.SetText Text1
Номер ответа: 2
Автор ответа:
Kardinal
ICQ: 360041513
Вопросов: 1
Ответов: 164
Web-сайт:
Профиль | | #2
Добавлено: 06.12.08 10:36
Кстати, у меня такая же проблема, правда на одних компах все нормально, на других такая кодировка. При этом это же происходит при печати
Номер ответа: 3
Автор ответа:
Kardinal
ICQ: 360041513
Вопросов: 1
Ответов: 164
Web-сайт:
Профиль | | #3
Добавлено: 06.12.08 10:38
Есть предложение: менять аск-коды букв, или вообще переводить в уникод.
Номер ответа: 4
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #4
Добавлено: 06.12.08 19:40
Баг винды. То ли копировать, то ли вставлять надо с включенной русской раскладкой.
Номер ответа: 5
Автор ответа:
Petruha
Вопросов: 3
Ответов: 4
Профиль | | #5
Добавлено: 06.12.08 21:54
Спасисобо действительно подсказал действенное решение, тем у кого такая же проблема добалю что предварительно надо продекларировать эту гадость строчкой
Private Declare Function LoadKeyboardLayout Lib "user32" Alias "LoadKeyboardLayoutA" (ByVal pwszKLID As String, ByVal flags As Long) As Long
а в строке LoadKeyboardLayout "00000419", KLF_ACTIVATE
написать LoadKeyboardLayout "00000419",&H1
Вот так эта проблема и решена
Номер ответа: 6
Автор ответа:
Kardinal
ICQ: 360041513
Вопросов: 1
Ответов: 164
Web-сайт:
Профиль | | #6
Добавлено: 07.12.08 20:43
Спасибо, не думал что так просто.