Ich habe die Lösung gefunden, wie man die Daten zumindest nicht in der Windows Zwischenablage sieht!
Unter
https://docs.microsoft.com/en-us/win...istory-formats findet sich der Hinweis, dass man das ClipBoardFormat "
ExcludeClipboardContentFromMonitorProcessing" anmelden muss, um nachfolgende Inhalte vor der "sichtbaren" Zwischenablage zu schützen.
Nachfolgender Code versteckt den Inhalt meiner Zwischenablage, lässt den Text aber über Strg+V und "Einfügen" in alle Texteditoren und Eingabefeldern einfügen!
Delphi-Quellcode:
procedure SetDataCB(myCF: Word; pBData: TBytes);
var
MemHandle: THandle;
MemPtr : Pointer;
begin
begin
MemHandle := GlobalAlloc(GHND, Length(pBData));
if MemHandle <> 0 then
begin
MemPtr := GlobalLock(MemHandle);
try
Move(pBData, MemPtr, High(TBytes));
finally
GlobalUnlock(MemHandle);
end;
end
else
MessageDlg('Global Alloc failed!', mtError, [mbOK], 0);
end;
// Now we call SetAsHandle to write it to the clipboard.
Clipboard.SetAsHandle(myCF, MemHandle);
end;
Delphi-Quellcode:
var
bFalse, bTrue : TBytes;
cf : Word;
const
cfnNoMonitorProc = 'ExcludeClipboardContentFromMonitorProcessing';
// cfnHistory = 'CanIncludeInClipboardHistory';
// cfnCloud = 'CanUploadToCloudClipboard';
begin
ClipBoard.Open;
bFalse := TBytes.Create(0, 0, 0, 0);
bTrue := TBytes.Create(1, 0, 0, 0);
cf := RegisterClipboardFormat(CfnNoMonitorProc);
if(cf = 0) then
ShowMessage('Unable to register ' + CfnNoMonitorProc +'!')
else
SetDataCB(cf, bTrue);
// cf := RegisterClipboardFormat(CfnCloud);
// if(cf = 0) then
// ShowMessage('Unable to register ' + CfnHistory +'!')
// else
// SetDataCB(cf, bFalse);
//
// cf := RegisterClipboardFormat(CfnHistory);
// if(cf = 0) then
// ShowMessage('Unable to register ' + CfnCloud +'!')
// else
// SetDataCB(cf, bFalse);
Clipboard.AsText := 'Mein Text in der Zwischenablage';
ClipBoard.Close;
end;
Mit der Anmeldung der anderen ClipBoardFormate
CanIncludeInClipboardHistory und
CanUploadToCloudClipboard und der Übergabe des false Wertes, lässt sich auch die Übertragung der Daten in die Cloud verhindern.
Nachteil: andere Clipboard Viewer, wie z.B. der von GExperts liest die Daten weiterhin aus. Aber mir reicht es grundsätzlich erst einmal so.
Ich danke euch für die Denkanstöße!