Registriert seit: 29. Mär 2009
439 Beiträge
|
AW: Too stupid to execute and wait
9. Aug 2011, 19:23
Himitsu hat zwar recht damit, dass Application.ProcessMessages auch das Einfrieren der Hauptanwendung vermeidet, aber deshalb wurde diese Sequenz ja nicht eingebaut. Sondern damit sollte der Deadlock verhindert werden. Ich behaupte, dass der Deadlock wegen der Verwendung des "SEE_MASK_NOASYNC"-Flags entsteht. Falls das richtig sein sollte, würde das Hauptmotiv für die Einführung MSGWAITFORMultipleObjects und Application.ProcessMessages zunächst mal wegfallen. Ob Du es dann wieder einführst, um das Einfrieren der Hauptanwendung zu verhindern, steht auf einem anderen Blatt.
SEE_MASK_NOZONECHECKS vermeidet lediglich eine Nachfrage, falls man das Setup-Programm von einem Netzwerklaufwerk gestartet werden soll. Das hat also mit dem hier diskutierten Problem nichts zu tun.
|