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

Вниз

unicode & clipboard   Найти похожие ветки 

 
Вадим ©   (2003-03-23 23:37) [0]

Есть s: string. Необходимо копировать стустроку в буфер обмена в юникоде. Как это сделать. Если я правильно понял, то сначала надо ее конвертировать в юникод функцией StringToWideChar(), а дальше что делать? Как получившийся данные копировать в буфер обмена?

Спасибо!


 
Вадим ©   (2003-03-24 10:38) [1]

up

Если я плохо объяснил суть задачи, то попробую еще раз. Есть PWideChar. Как копировать это в буфер обмена?


 
NAlexey ©   (2003-03-24 10:53) [2]

Взял кажется с сайта "Королевство Delphi"

procedure BufferToClipboard(Buffer: String);
var
WideBuffer: WideString;
BuffSize: Cardinal;
Data: THandle;
DataPtr: Pointer;
begin
if Buffer <> "" then begin
WideBuffer := Buffer;
BuffSize := length(Buffer) * SizeOf(WideChar);
Data := GlobalAlloc(GMEM_MOVEABLE+GMEM_DDESHARE+GMEM_ZEROINIT, BuffSize + 2);
try
DataPtr := GlobalLock(Data);
try
Move(PWideChar(WideBuffer)^, Pointer(Cardinal(DataPtr))^, BuffSize);
finally
GlobalUnlock(Data);
end;
Clipboard.SetAsHandle(CF_UNICODETEXT, Data);
except
GlobalFree(Data);
raise;
end;
end;
end;
<\CODE>



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

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

Наверх




Память: 0.47 MB
Время: 0.012 c
6-70414
alexay
2003-03-25 09:51
2003.05.22
Синхронизация часов win98 с UNIX серверами


3-70111
Sergey
2003-04-28 13:54
2003.05.22
Midas событие ReconcileError ?


8-70399
yuravss
2003-02-09 16:12
2003.05.22
Как снимать скриншоты десктопа без тормозов (GDI)


1-70368
VOLKL
2003-05-10 12:29
2003.05.22
активация окна из треи


7-70538
___ALex___
2003-03-24 18:12
2003.05.22
System Tray