Keine Rückmeldung wenn Focus bei Aktiviätät geändert wird

Keine Rückmeldung wenn Focus bei Aktiviätät geändert wird

Beitragvon Schabersack » 8. Sep 2018, 09:35 Keine Rückmeldung wenn Focus bei Aktiviätät geändert wird

Hallo!

Ich habe ein kleines Tool geschrieben, das mit einer rekursiven Schleife über Verzeichnisse läuft, Pfadlägen ermittelt und in einer Liste einträgt.

Wenn während dem Programmlauf nun das Fenster verschoben wird, oder einfach der Focus an ein anderes Programm abgegeben wird, dann hängt sich mein Programm auf (keine Rückmeldung).

Was kann ich tun, dass die Applikation im Hintergrund ordentlich weiter läuft?

Danke für Eure Hilfe...

Gruß

Schabersack
Wer das Haus mit einem Schrim verlässt, der hat auch anrecht auf Regen!
Schabersack
 
Beiträge: 6
Registriert: 16. Okt 2013, 19:24

Beitragvon Warf » 8. Sep 2018, 11:37 Re: Keine Rückmeldung wenn Focus bei Aktiviätät geändert wir

Es läuft im Hintergrund sauber weiter, selbst wenn da steht reagiert nicht. Wenn du das reagiert nicht vermeiden willst ruf alle paar iteration einfach mal Application.ProcessMessages auf (nicht zu häufig sind’s wird’s zu langsam, Min alle 2-3 Sekunden damit das reagiert nicht nicht erscheint
Warf
 
Beiträge: 985
Registriert: 23. Sep 2014, 16:46
Wohnort: Aachen
OS, Lazarus, FPC: Mac OSX 10.11 | Win 10 | FPC 3.0.0 | L trunk | 
CPU-Target: x86_64, i368, ARM
Nach oben

Beitragvon Mathias » 8. Sep 2018, 15:48 Re: Keine Rückmeldung wenn Focus bei Aktiviätät geändert wir

Ich mag mich noch erinnern an Win95 und Delphi 3, da hat so eine Schleife ohne Application.ProcessMessages, das ganze System blockiert.
Der Mauszeiger hatte sich noch bewegt, aber es hatte auf nichts mehr reagiert.
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 4342
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

• Themenende •

Zurück zu Windows



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

porpoises-institution
accuracy-worried