<<< 15.01.2010 13:54 - Roland Turcan "" >>>
RT> Hello Lazarus mailing list!
RT> I have written a simple tunnel library to communicate an old RT> application with the clipboard on modern linux. RT> When I use my functions from test application called directly, then RT> everything works fine.
RT> When I use those function as external dynamic functions from shared RT> library then no data are read and no data are written into clipboard.
I have checked that:
PROCEDURE clipboard_setastext (Buffer:PChar; BufferSize:INTEGER);
VAR s :STRING;
begin
IF BufferSize > 0 THEN begin
SetLength (s, BufferSize);
StrCopy (PChar(s), Buffer);
Clipboard.AsText := s;
{$IFDEF DEBUG}
StrToFile ('clipboard_setastext.Result = ' + s + #13#10 +
'from clipboard.AsText = ' + Clipboard.AsText, '/tmp/_SetAsText.txt');
{$ENDIF}
END;
END;
logs into file that "s" and "Clipboard.AsText" contain the same value, but nothing could be pasted out in text editor. It means, that it is not sent into clipboard.
When I read Clipboard.AsText inside of GetAsText funcion, it always returns an empty string.
TRoland;
RT> I have set that library should use Gtk2, and into LPR I mentioned RT> "Interfaces" unit.
RT> What could be a reason, that clipboard doesn't work properly when used RT> in shared library?
RT> Thanks in advance.