Пример использования:

Code:

procedure TForm1.Button1Click(Sender: TObject);

begin

SetClipboardText(Handle, 'qwerty');

end;

 

 

Сам код:

 

Code:

{ **** UBPFD *********** ****

>> Добавление текста в буфер обмена без использования модуля Clipbrd

 Wnd - Handle окна, получающего доступ к буферу обмена, может быть Application.Handle или Form.Handle

Value - текст, помещаемый в буфер обмена

 

Зависимости: Windows

Автор:       Dimka Maslov, Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра., ICQ:148442121, Санкт-Петербург

Copyright:   Dimka Maslov

 

********************************************** }

 

function SetClipboardText(Wnd: HWND; Value: string): Boolean;

var

hData: HGlobal;

pData: pointer;

Len: integer;

begin

Result:=True;

if OpenClipboard(Wnd) then begin

try

  Len:=Length(Value)+1;

  hData:=GlobalAlloc(GMEM_MOVEABLE or GMEM_DDESHARE, Len);

  try

   pData:=GlobalLock(hData);

   try

    Move(PChar(Value)^, pData^, Len);

    EmptyClipboard;

    SetClipboardData(CF_Text, hData);

   finally

    GlobalUnlock(hData);

   end;

  except

   GlobalFree(hData);

   raise

  end;

finally

  CloseClipboard;

end;

end else Result:=False;

end;

 

Добавить комментарий

Не использовать не нормативную лексику.

Просьба писать ваши замечания, наблюдения и все остальное,
что поможет улучшить предоставляемую информацию на этом сайте.

ВСЕ КОММЕНТАРИИ МОДЕРИРУЮТСЯ ВРУЧНУЮ, ТАК ЧТО СПАМИТЬ БЕСПОЛЕЗНО!


Защитный код
Обновить