Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.08.15;
Скачать: CL | DM;

Вниз

Проблема с кириллицей и буфером обмена   Найти похожие ветки 

 
fylhtq ©   (2004-07-30 13:48) [0]

Не подскажете, уважаемые, как обойти данную проблему:
При копировании в буфер обмена Clipboard.asText кириллического текста - вставляется абракадабра.


 
Sancho ©   (2004-07-30 14:01) [1]

Попробуй перед копированием текста в буфер поменять раскладку клавиатуры (надо послать главному окну приложения сообщение WM_INPUTLANGCHANGEREQUEST).


 
fylhtq ©   (2004-07-30 14:06) [2]

Ух... А можно на пальцах, ежели не трудно?


 
clickmaker ©   (2004-07-30 14:10) [3]


> fylhtq ©   (30.07.04 13:48)

Куда вставляется?


 
fylhtq ©   (2004-07-30 14:12) [4]

В частности в Блокнот


 
Sancho ©   (2004-07-30 14:24) [5]

Var
 ALayout: HKL
........
PostMessage(Application.MainForm.Handle,
WM_INPUTLANGCHANGEREQUEST, 0, ALayout);

ALayout принимает значения: Английская_раскладка = $4090409; Русская_раскладка = $4190419. В винде (2K и, наверное, XP) есть такой косяк: при копировании в буфер обмена русского текста копируются крякозяблики (когда включена английская раскладка), меняешь раскладку и все нормально


 
GrayFace   (2004-07-30 15:25) [6]

В XP - тоже.


 
clickmaker ©   (2004-07-30 15:49) [7]

попробуй так

procedure SetClipboardText(const S: string);
 var
   wsz: PWideChar;
   dwSize: Cardinal;
   hData: Cardinal;
 begin
   if (Win32Platform = VER_PLATFORM_WIN32_NT) then begin

     dwSize := (Length(S)+1) * SizeOf(WideChar);
     hData := GlobalAlloc(GMEM_MOVEABLE or GMEM_DDESHARE, dwSize);
     wsz := PWideChar(GlobalLock(hData));
     StringToWideChar(S, wsz, Length(S)+1);
     GlobalUnlock(hData);
     Clipboard.SetAsHandle(CF_UNICODETEXT, hData);
   end else
     Clipboard.AsText := S;
 end;


 
fylhtq ©   (2004-07-30 16:14) [8]

2clickmaker
Агромнейший спасибо!



Страницы: 1 вся ветка

Текущий архив: 2004.08.15;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.037 c
6-1087268007
genemy
2004-06-15 06:53
2004.08.15
именованные каналы


14-1090716682
Soft
2004-07-25 04:51
2004.08.15
AI, для всех гикнутых хакеров на этом форуме.


6-1087317889
Игорь
2004-06-15 20:44
2004.08.15
Вопрос по функции InetIsOffline


3-1090171557
buka
2004-07-18 21:25
2004.08.15
Помогите мастера! Надо найти следующую запись в Table


8-1085751676
Korneley
2004-05-28 17:41
2004.08.15
Нужно описание DirectShow