Строка читается так. Остальное по тому же принципу.
procedure ReadVarFromClp;
var s:string;
begin
s:=Clipboard2Text:
end;
function Clipboard2Text: String;
var gbl: THandle;
str: PChar;
begin
Result := '';
if OpenClipboard( 0 ) then
begin
if IsClipboardFormatAvailable( CF_TEXT ) then
begin
gbl := GetClipboardData( CF_TEXT );
if gbl <> 0 then
begin
str := GlobalLock( gbl );
if str <> nil then
begin
Result := str;
GlobalUnlock( gbl );
end;
end;
end;
CloseClipboard;
end;
end;
Можно зарегистрировать свой тип (но тогда скорее всего самому придется помещать туда значение переменной)
var CF_OPCDATAID : integer=0;
procedure RegisterClpFormat();
begin
CF_OPCDATAID:=RegisterClipboardFormat(pChar(CF_MYDATA));
end;