Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.039 Beiträge
 
Delphi 12 Athens
 
#8

AW: Zwischenablage Zugriff verweigert

  Alt 16. Aug 2022, 09:26
Vieleicht können sie die Schleife in TClipboard.Open einbauen.
Das wird aus Kompatibilitätsgründen wohl nicht passieren. Ich könnte mir eher eine Lösung dieser Art vorstellen (später mal direkt in TClipboard):
Delphi-Quellcode:
type
  TClipboardHelper = class helper for TClipboard
    function TryOpen(MaxTries: Integer = 50; Delay: Integer = 20): Boolean;
  end;

function TClipboardHelper.TryOpen(MaxTries: Integer = 50; Delay: Integer = 20): Boolean;
begin
  var cnt := 0;
  while True do begin
    try
      Open;
      Exit(True);
    except
      on EClipboardException do begin
        Inc(cnt);
        if cnt < MaxTries then
          Sleep(Delay)
        else
          Exit(False);
      end;
    end;
  end;
end;
Das erfordert aber eine Anpassung aller Open-Aufrufe.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat