Es geht durchaus ohne das Application.Run.
Das Prograsmm macht dann alles, was in der
DPR steht und beendet sich dann automatisch wieder (funktioniert also ähnlich einem Konsolenprogramm, das zufällig / irrtümlich 'ne Oberfläche hat). Hab' ich schon häufiger so gelöst für Programme, die man einmal mit Oberfläche starten und steuern kann, die aber auch im Batchbetrieb eingesetzt werden konnten. Die Unterscheidung, ob Application.Run aufgerufen wird oder nicht, erfolgte dabei über Komandozeilenparameter.
Kein Parameter, dann Run, ansonsten das, was die Parameter vorgaben.
Ohne den Inhalt von MainForm.Verarbeitung; wird es bei der Fehlersuche aber eher schwierig.
Fehler in der Entwicklungsumgebung nur mit oder nur ohne aktiven Debugger?
Auch da kann es noch Unterschiede geben (auch wenn dem eigentlich nicht so sein sollte).