Einzelnen Beitrag anzeigen

Hobbycoder

Registriert seit: 22. Feb 2017
1.017 Beiträge
 
#1

[D7] TRichEdit verweigert ein einem Rechner PasteFromClipboard

  Alt 22. Jul 2025, 17:52
Hi,

in einem alten Projekt habe ich einen merkwürdigen Fehler:
In der Zeile PasteFromClipboard wird nicht eingefügt, sondern lediglich ein Beep ausgegeben.
Das Problem: Es tritt nur an einem Kundenrechner und nur bei einem Kunden auf. Ich konnte den Fehler bei mir nicht reproduzieren, beim Kunden aber jedes mal. Irgendwann hat er dann doch einmal was eingefügt, aber das ging wirklich auch nur einmal. Danach wieder troz Neustarts der Software und auch des Rechners nicht mehr.

Es wird auch keine Exception ausgelöst und GetLastError liefert 0.
Was aber geht ist das Einfügen im RichEdit per Strg+V und ich kann den auch dein Text, der in der Prozedur vorher mit CopyToClipboard in der Zwischenablage abgelegt wurde problemlos z.B. in Word einfügen.

Das einzige, was sich geändert hat (und danach ist der Fehler aufgetreten) ist, dass der Arbeitsplatz einen neuen PC bekommen hat. Die Festplatte wurde jedoch per Image-Backup übernommen. Betriebssystem am Problemrechner ist Win-10-Pro. Leider kann der Zielrechner nicht mal eben neu installiert werden, weil da wohl sehr viele Software drauf ist, die täglich benötigt wird. (Aussage des Kunden)
Virenscanner ist Sophos, wie bei allen anderen Rechnern des Netzwerks auch, und ansonsten hat der Rechner keine Probleme.

Delphi-Quellcode:
  try
    if (Arow>0) and (ACol<2) then begin
      RichEdit_vorlage.SelectAll;
      RichEdit_vorlage.SelLength:=RichEdit_vorlage.SelLength-1;
      RichEdit_vorlage.CopyToClipboard;
      RichEdit1.PasteFromClipboard;
      RichEdit1.SetFocus;
      lblLastOSError.Caption:=IntToStr(GetLastError);
    end;
  except
    on E: Exception do
    begin
      OnError(Self, 'PasteFromClipboard', 0, E.Message);
      ShowMessage('Fehler: '+E.Message+sLineBreak+'OS Error: '+IntToStr(GetLastError));
    end;
  end;
Hat einer sowas schon mal gehabt, oder ne Idee, wo ich suchen könnte?
Gruß Hobbycoder
Alle sagten: "Das geht nicht.". Dann kam einer, der wusste das nicht, und hat's einfach gemacht.

Geändert von Hobbycoder (22. Jul 2025 um 17:54 Uhr)
  Mit Zitat antworten Zitat