Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 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-сайт: kg7.ru
 Профиль | | #2
Добавлено: 06.12.08 10:36
Кстати, у меня такая же проблема, правда на одних компах все нормально, на других такая кодировка. При этом это же происходит при печати

Ответить

Номер ответа: 3
Автор ответа:
 Kardinal



ICQ: 360041513 

Вопросов: 1
Ответов: 164
 Web-сайт: kg7.ru
 Профиль | | #3
Добавлено: 06.12.08 10:38
Есть предложение: менять аск-коды букв, или вообще переводить в уникод.

Ответить

Номер ответа: 4
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #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-сайт: kg7.ru
 Профиль | | #6
Добавлено: 07.12.08 20:43
Спасибо, не думал что так просто.:-)

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам