Einzelnen Beitrag anzeigen

Michael II

Registriert seit: 1. Dez 2012
Ort: CH BE Eriswil
760 Beiträge
 
Delphi 11 Alexandria
 
#8

AW: D11 : Programm hängt zieht 25% CPU bei UI Aktualisierung

  Alt 26. Jan 2023, 14:31
Ich würde deine hängenden Projekte mal mit zum Beispiel Eurekalog laufen lassen. Das kann bei Hängern sehr helfen.
Delphi IDE Menu Projekt > Eurekalog Optionen unter "Features > Hang Detection" "gewünschte" Zeit einstellen.

Die Meldungsdialoge verhalten sich seit irgendwann XE nicht mehr genau so wie bei D6/7. Da musst du entweder deinen Code umbauen oder die Dialogfunktion so anpassen, dass sich deine App unter den neueren Delphis wie zu D6/7 Zeiten verhält. Sehr wahrscheinlich wird dies helfen:
Application.NormalizeTopMosts;
Application.RestoreTopMosts;

Zum Beispiel so:
Delphi-Quellcode:
function MessgeBoxDlg(const Msg: string; DlgType: TMsgDlgType; Buttons: TMsgDlgButtons; HelpCtx: Longint): Integer;
begin
  Application.NormalizeTopMosts;
  result := VCL.Dialogs.MessageDlg(Msg, DlgType, Buttons, HelpCtx);
  Application.RestoreTopMosts;
end;

Danke jaenicke für den Windows Detective Tipp - kannte ich nicht.
Michael Gasser

Geändert von Michael II (26. Jan 2023 um 15:18 Uhr)
  Mit Zitat antworten Zitat