<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Programmaufruf abwarten]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich bin noch ziemlich unerfahren mit VC++ 6.0.</p>
<p>Ich habe ein Kontaktformular erstellt, dass<br />
Adressdaten aufnimmt und diese in dann in der Datei anfrage.txt<br />
abspeichert.</p>
<p>Diese Datei soll anschliessend per email<br />
(über das Kommandozeilenprogramm blat.exe) versendet werden.<br />
Der Aufruf erfolgt über einen Button im Dialogfenster.<br />
Da der Versand etwas dauert, habe ich eine Fortschrittsanzeige mit eingebaut.</p>
<p>Der Aufruf klappt, jedoch wird die Kommandozeile sofort wieder geschlossen.<br />
Starte ich ShellExecute als letzen Eintrag in der Funktion, wird<br />
die Email erfolgreich verschickt.<br />
Nur dann bleibt das Dialogfenster offen.</p>
<p>Was muss ich verändern, dass dieser Consolen-Aufruf wieder richtig funktioniert? Worin liegt das Problem?</p>
<pre><code class="language-cpp">////////////////////////////////////////////////////////////////////
	// Hier wird die Email versendet. Dazu wird blat.exe benötigt.

	ShellExecute(NULL,&quot;open&quot;,&quot;blat.exe&quot;,&quot;c:\\anfrage.txt -to info@test.de -subject Anfrage&quot;,NULL,SW_SHOW);

	////////////////////////////////////////////////////////////////////
	// Fortschrittsanzeige

	int DAUER = 10;				// Dauer in Sekunden
	DAUER = DAUER * 10000;

	CProgressWnd wndProgress(this, &quot;Progress&quot;, TRUE);
	wndProgress.SetRange(0,DAUER);
	wndProgress.SetText(&quot;Versende Email&quot;);

	for (int i = 0; i &lt; DAUER; i++) {
	wndProgress.StepIt();
	wndProgress.PeekAndPump();

		if (wndProgress.Cancelled()) {
			MessageBox(&quot;Email-Versand abgebrochen&quot;);
			break;

		}
	}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/61200/programmaufruf-abwarten</link><generator>RSS for Node</generator><lastBuildDate>Wed, 03 Jun 2026 15:42:17 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/61200.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 12 Jan 2004 15:36:22 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Programmaufruf abwarten on Mon, 12 Jan 2004 16:16:00 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich bin noch ziemlich unerfahren mit VC++ 6.0.</p>
<p>Ich habe ein Kontaktformular erstellt, dass<br />
Adressdaten aufnimmt und diese in dann in der Datei anfrage.txt<br />
abspeichert.</p>
<p>Diese Datei soll anschliessend per email<br />
(über das Kommandozeilenprogramm blat.exe) versendet werden.<br />
Der Aufruf erfolgt über einen Button im Dialogfenster.<br />
Da der Versand etwas dauert, habe ich eine Fortschrittsanzeige mit eingebaut.</p>
<p>Der Aufruf klappt, jedoch wird die Kommandozeile sofort wieder geschlossen.<br />
Starte ich ShellExecute als letzen Eintrag in der Funktion, wird<br />
die Email erfolgreich verschickt.<br />
Nur dann bleibt das Dialogfenster offen.</p>
<p>Was muss ich verändern, dass dieser Consolen-Aufruf wieder richtig funktioniert? Worin liegt das Problem?</p>
<pre><code class="language-cpp">////////////////////////////////////////////////////////////////////
	// Hier wird die Email versendet. Dazu wird blat.exe benötigt.

	ShellExecute(NULL,&quot;open&quot;,&quot;blat.exe&quot;,&quot;c:\\anfrage.txt -to info@test.de -subject Anfrage&quot;,NULL,SW_SHOW);

	////////////////////////////////////////////////////////////////////
	// Fortschrittsanzeige

	int DAUER = 10;				// Dauer in Sekunden
	DAUER = DAUER * 10000;

	CProgressWnd wndProgress(this, &quot;Progress&quot;, TRUE);
	wndProgress.SetRange(0,DAUER);
	wndProgress.SetText(&quot;Versende Email&quot;);

	for (int i = 0; i &lt; DAUER; i++) {
	wndProgress.StepIt();
	wndProgress.PeekAndPump();

		if (wndProgress.Cancelled()) {
			MessageBox(&quot;Email-Versand abgebrochen&quot;);
			break;

		}
	}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/434577</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/434577</guid><dc:creator><![CDATA[Deschain]]></dc:creator><pubDate>Mon, 12 Jan 2004 16:16:00 GMT</pubDate></item><item><title><![CDATA[Reply to Programmaufruf abwarten on Tue, 13 Jan 2004 05:31:50 GMT]]></title><description><![CDATA[<p>Schau bei Codeguru. Dort gibt es eine Klasse für den Emailversand.<br />
Ist eine bessere Lösung als Deine.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/435106</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/435106</guid><dc:creator><![CDATA[Unix-Tom]]></dc:creator><pubDate>Tue, 13 Jan 2004 05:31:50 GMT</pubDate></item><item><title><![CDATA[Reply to Programmaufruf abwarten on Tue, 13 Jan 2004 16:50:04 GMT]]></title><description><![CDATA[<p>Jetzt hab ichs...<br />
Ich habe eine Datei beschrieben, hatte diese jedoch nicht mit File.Close() geschlossen.</p>
<p>Danach wurde der email-Versand aufgerufen.</p>
<p>Jetzt funktioniert es tadellos.</p>
<p>Trotzdem danke.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/435618</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/435618</guid><dc:creator><![CDATA[Deschain]]></dc:creator><pubDate>Tue, 13 Jan 2004 16:50:04 GMT</pubDate></item></channel></rss>