Hallo
Das Kopieren von Text kannst du durch Abfangen von WM_COPY verhindern.
Delphi-Quellcode:
private
FOldMemoProc: TWndMethod;
protected
procedure MemoWndProc(var Msg: TMessage);
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.MemoWndProc(var Msg: TMessage);
begin
if (Msg.Msg = WM_COPY) then
begin
Msg.Result := 1;
ShowMessage('Kopieren nicht erlaubt ;)');
end else
FOldMemoProc(Msg);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
FOldMemoProc := Memo1.WindowProc;
Memo1.WindowProc := MemoWndProc;
end;
Wenn auch Msg.Msg auf WM_GETTEXT überprüft wird, kann der Text auch nicht mehr von "außen" ausgelesen werden.
Musst nur überprüfen, ob dies keine anderen "Nebenwirkungen" mit sich bringt.