Moin Deadinpac,
ich sagte ja schau Dir mal TClipboard an.
Wenn es Dir nur im Text in der Zwischenablage geht, kannst Du mit der Eigenschaft HasFormat(CF_TEXT) überprüfen, ob überhaupt Text enthalten ist und diesen dann auslesen.
Beim zurücksetzen, kann dann die Prüfung natürlich entfallen.
Delphi-Quellcode:
// Textinhalt der Zwischenablage sichern
var
slWork : TStringList;
begin
// Zwischenablage öffnen
Clipboard.Open;
try
// Wenn kein Text enthalten ist, fertig
if not Clipboard.HasFormat(CF_TEXT) then exit;
// Der Einfachheit halber eine Stringliste zum Auslesen
// dann lässt sich einfach SaveToFile benutzen
slWork := TStringList.Create;
try
slWork.Text := Clipboard.AsText;
slWork.SaveToFile('c:\temp\saveclipboard.txt');
finally
FreeAndNil(slWork);
end;
finally
Clipboard.Close;
end;
end;
Delphi-Quellcode:
// Textinhalt wieder in die Zwischenablage
var
slWork : TStringList;
begin
Clipboard.Open;
try
slWork := TStringList.Create;
try
slWork.LoadFromFile('c:\temp\saveclipboard.txt');
Clipboard.SetTextBuf(PChar(slWork.Text));
finally
FreeAndNil(slWork);
end;
finally
Clipboard.Close;
end;
end;