ich starte per ShellExecuteEx einen Word-Prozess der mir ein Worddokument öffnet. Ich möchte gerne darauf warten, dass dieses Fenster (vom Benutzer) geschlossen wird, und dann weiter arbeiten.
Allerdings wartet WaitForSingleObject nicht, bis das Fenster geschlossen ist, sondern liefert als Rückgabewert direkt "WAIT_OBJECT_0" zurück - was ja eigentlich bedeuten sollte, dass mein Fenster geschlossen wurde.
Ich verstehe nicht ganz was ich hier falsch mache. Da ich den Prozess selbst starte um den es geht, müsste ich ja auch den richtigen Handle durch die Struktur haben, die ich verwende?!
Wenn dein Prozess nicht starten würde, hätte ich gesagt, dass du einfach mal die variablen Parts (die Strings) durch fixe ersetzen solltest. Aber so...?
_________________ Wie viele atheistische Babys hat man schon aus Versehen - oder gar mit Absicht! - getauft?
Ich führe mein Programm über eine Batchdatei aus - könnte das damit etwas zu tun haben? Könnte das verursachen, dass mein Programm dann nicht warten kann?
Wenn ich das Programm direkt ausführe, scheint es nämlich zu funktionieren, nur ich verstehe nicht ganz, was da den Unterschied ausmacht.
Ich führe mein Programm über eine Batchdatei aus - könnte das damit etwas zu tun haben? Könnte das verursachen, dass mein Programm dann nicht warten kann?
Wenn ich das Programm direkt ausführe, scheint es nämlich zu funktionieren, nur ich verstehe nicht ganz, was da den Unterschied ausmacht.
Die Batchdatei wird wahrscheinlich beendet, sie startet halt nur die exe, wartet aber nicht auf deren Beendigung. Das kann man in der Batchdatei auch irgendwie einstellen, ich weiß aber grad nicht mehr wie... EDIT: Musste man da nicht CALL dem exe-Aufruf voranstellen oder so?
EDIT2: Hm, also wenn ich eine Batchdatei starte, die notepad.exe aufruft (ob mit oder ohne call), dann wartet WaitForSingleObject immer ganz korrekt auf Beendigung...
_________________ Wie viele atheistische Babys hat man schon aus Versehen - oder gar mit Absicht! - getauft?
Zuletzt bearbeitet von _matze am 12:54:53 12.03.2010, insgesamt 2-mal bearbeitet
Nächstes Thema anzeigen Vorheriges Thema anzeigen
Sie können Beiträge in dieses Forum schreiben. Sie können auf Beiträge in diesem Forum antworten. Sie können Ihre Beiträge in diesem Forum nicht bearbeiten. Sie können Ihre Beiträge in diesem Forum nicht löschen. Sie können an Umfragen in diesem Forum nicht mitmachen.
c++.de ist Teilnehmer des Partnerprogramms von Amazon Europe S.à.r.l. und Partner des Werbeprogramms, das zur Bereitstellung eines Mediums
für Websites konzipiert wurde, mittels dessen durch die Platzierung von Werbeanzeigen und Links zu amazon.de
Werbekostenerstattung verdient werden kann.
Die Vervielfältigung der auf den Seiten www.c-plusplus.de, www.c-plusplus.info, www.c-sar.de, www.c-plusplus.net und www.baeckmann.de
enthaltenen Informationen ohne eine schriftliche Genehmigung des Seitenbetreibers ist untersagt
(vgl. §4 Urheberrechtsgesetz). Die Nutzung und Änderung der vorgestellten Strukturen und Verfahren in
privaten und kommerziellen Softwareanwendungen ist ausdrücklich erlaubt, soweit keine Rechte Dritter verletzt werden.
Der Seitenbetreiber übernimmt keine Gewähr für die Funktion einzelner Beiträge oder Programmfragmente, insbesondere
übernimmt er keine Haftung für eventuelle aus dem Gebrauch entstehenden Folgeschäden.