WaitForSingleObject produziert scheinbar wie vorgesehen einen deadlock wenn der aufgerufen prozess ein neues Fenster erzeugt.
Und die
msdn hatte recht...(seltsam) mit MsgWaitForMultipleObjects geht es dann trotzdem.
Es funzt, aber keiner weiß warum. Das ist unbefriedigend.
Ich vermute:
Du hast bei Shellexecute dein eigenes WindowHandle angegeben. Anscheinend werden aus deiner setup.exe dahin Messages gesendet o.ä. Und MsgWaitforMultipleObjectes geht auch bei ankommenden Messages raus. Jetzt ist nur die Frage, was für Messages kommen denn da rüber? Kannst die ja mal mit PeekMessage abholen wenn R=Wait_Object_0 + 1 ist.
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.