<?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[CFileDialog - kompletter Pfad des zu speichernden Files]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>ich nutze einen CFileDialog, um eine Datei zu speichern. Der Ablauf ist so, dass der zu speichernde Dateiname ausgewählt wird, dann wird eine Berechnung ausgeführt (die zeitverzögert über einen Button ausgelöst wird) und anschließend die Ergebnisse abgespeichert.</p>
<p>Mein Problem ist, dass ich vor der Auslösung der Berechnung den kompletten Pfad gern in einem EditFeld anzeigen würde. Mit dlg.GetFileName() bekomme ich aber nur den Dateinamen, nicht den kompletten Pfad. Gibt es eine Methode, die mir den kompletten Pfad zurückgibt bzw. das aktuelle Verzeichnis?</p>
<pre><code class="language-cpp">CFileDialog dlg(FALSE,
						&quot;.txt&quot;,
						NULL,
						OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
						&quot;Text-Dateien (*.txt)|*.txt|Alle (*.*)|*.*||&quot;,
						NULL,
						0
						);

         //Berechnung wird ausgeführt

	if(dlg.DoModal() ==IDOK)
	{
        //hier wird nur der Dateiname ins Feld geschrieben,
        //nicht der komplette Pfad =(
		m_strDestination = dlg.GetFileName();
		CEdit *pCEd = static_cast&lt;CEdit*&gt;(GetDlgItem(IDC_EDIT));
		pCEd-&gt;SetWindowText(m_strDestination.c_str());

		CStdioFile file;
        file.Open(m_strDestination.c_str(), CFile::modeCreate | CFile::modeWrite);
        file.WriteString(&quot;Testeintrag\n&quot;);
        file.Close();
	}
</code></pre>
<p>Vielen Dank schonmal <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/200220/cfiledialog-kompletter-pfad-des-zu-speichernden-files</link><generator>RSS for Node</generator><lastBuildDate>Tue, 07 Apr 2026 09:15:35 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/200220.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 12 Dec 2007 09:35:05 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to CFileDialog - kompletter Pfad des zu speichernden Files on Wed, 12 Dec 2007 09:35:05 GMT]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>ich nutze einen CFileDialog, um eine Datei zu speichern. Der Ablauf ist so, dass der zu speichernde Dateiname ausgewählt wird, dann wird eine Berechnung ausgeführt (die zeitverzögert über einen Button ausgelöst wird) und anschließend die Ergebnisse abgespeichert.</p>
<p>Mein Problem ist, dass ich vor der Auslösung der Berechnung den kompletten Pfad gern in einem EditFeld anzeigen würde. Mit dlg.GetFileName() bekomme ich aber nur den Dateinamen, nicht den kompletten Pfad. Gibt es eine Methode, die mir den kompletten Pfad zurückgibt bzw. das aktuelle Verzeichnis?</p>
<pre><code class="language-cpp">CFileDialog dlg(FALSE,
						&quot;.txt&quot;,
						NULL,
						OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
						&quot;Text-Dateien (*.txt)|*.txt|Alle (*.*)|*.*||&quot;,
						NULL,
						0
						);

         //Berechnung wird ausgeführt

	if(dlg.DoModal() ==IDOK)
	{
        //hier wird nur der Dateiname ins Feld geschrieben,
        //nicht der komplette Pfad =(
		m_strDestination = dlg.GetFileName();
		CEdit *pCEd = static_cast&lt;CEdit*&gt;(GetDlgItem(IDC_EDIT));
		pCEd-&gt;SetWindowText(m_strDestination.c_str());

		CStdioFile file;
        file.Open(m_strDestination.c_str(), CFile::modeCreate | CFile::modeWrite);
        file.WriteString(&quot;Testeintrag\n&quot;);
        file.Close();
	}
</code></pre>
<p>Vielen Dank schonmal <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1419197</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1419197</guid><dc:creator><![CDATA[BeNNeR]]></dc:creator><pubDate>Wed, 12 Dec 2007 09:35:05 GMT</pubDate></item><item><title><![CDATA[Reply to CFileDialog - kompletter Pfad des zu speichernden Files on Wed, 12 Dec 2007 09:48:13 GMT]]></title><description><![CDATA[<p>Ja, gibt es - GetPathName()</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1419208</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1419208</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Wed, 12 Dec 2007 09:48:13 GMT</pubDate></item><item><title><![CDATA[Reply to CFileDialog - kompletter Pfad des zu speichernden Files on Wed, 12 Dec 2007 09:52:51 GMT]]></title><description><![CDATA[<p>Wo ist denn der Smiley zum Rotwerden? Den könnt ich grad gut gebrauchen. Ich hatte vorher eigentlich in der MSDN gesucht, aber offensichtlich ziemlich schlampig...wie auch immer. Besten Dank auf jeden Fall <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1419211</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1419211</guid><dc:creator><![CDATA[BeNNeR]]></dc:creator><pubDate>Wed, 12 Dec 2007 09:52:51 GMT</pubDate></item></channel></rss>