Ако не ти се бърника в класа, пробвай това:
procedure PutStringIntoClipboard(const Value: string;LocaleID: longint);
var Size: Integer;
Data: THandle;
DataPtr: Pointer;
begin
if Length(Value) = 0 then exit;
Clipboard.Open;
try
Clipboard.AsText:= Value;
Size:= 4;
Data:= GlobalAlloc(GMEM_MOVEABLE + GMEM_DDESHARE, Size);
try
DataPtr := GlobalLock(Data);
try
Move(LocaleID, DataPtr^, Size);
Clipboard.SetAsHandle(CF_LOCALE, Data);
finally
GlobalUnlock(Data);
end;
except
GlobalFree(Data);
raise;
end;
finally
Clipboard.Close;
end;
end;