du kannst ja in die Schleife noch eine Zeitabfrage reinbauen. Vor der Schleife schreibst du
timestart:=now;
(timestart:tdatetime)
In der Schleife dann
Delphi-Quellcode:
if 24*3600*(now-timestart)>=10 then begin //wenn die endlosschleife seit mehr als 10 sec läuft
messagedlg('Dokument konnte nicht gedruckt werden: Der Drucker reagiert nicht.',mterror,[mbok],0);
exit; //break wenn nur zum nächsten doku gesprungen werden soll.
end;