<?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[Konsolenprogramm läuft, selbes Programm mit &amp;quot;GUI&amp;quot; nicht]]></title><description><![CDATA[<p>Hm, ja da bin ich mal wieder. Es geht mal wieder um Dateioperationen - diesesmal aber mit &quot;GUI&quot;.</p>
<p>Folgendes Beispiel kann ich wunderbar als Konsolenprogramm im Dev-CPP kompilieren:</p>
<pre><code class="language-cpp">#include &lt;cstdlib&gt;
#include &lt;dirent.h&gt;
#include &lt;iostream&gt;
#include &lt;string&gt;  //für std::string

using namespace std;

int main(int argc, char *argv[])
{
    DIR *hdir;
    struct dirent *entry;
       hdir = opendir(&quot;./rename&quot;);
    chdir(&quot;./rename&quot;);

    cout &lt;&lt; &quot;Erfolgreich ins Verzeichnis gewechselt...&quot; &lt;&lt; endl;

    do
    {
        entry = readdir(hdir);
        if (entry)
        {
            cout &lt;&lt; entry-&gt;d_name &lt;&lt; endl;
            string a,b;
            a = entry-&gt;d_name;
            b = entry-&gt;d_name+4;
            cout &lt;&lt; b &lt;&lt; endl;
            rename(a.c_str(),b.c_str());
        }
    } while (entry);
    closedir(hdir);
    system(&quot;PAUSE&quot;);
    return EXIT_SUCCESS;
}
</code></pre>
<p>Nun dachte ich mir, ich versuche mich mal an einer kleinen GUI. Also versuchte ich es via M$ Visual C++ (2005) umzusetzten. Aber er kompiliert die Anweisungen im onClick nicht.</p>
<p>hier mal die entsprechenden Codezeilen:</p>
<pre><code class="language-cpp">#include &quot;stdafx.h&quot;
#include &quot;Rename2.h&quot;
#include &quot;Rename2Dlg.h&quot;
#include &lt;dirent&gt;
#include &lt;cstdlib&gt; 
#include &lt;iostream&gt; 
#include &lt;string&gt;  //für std::string 

[gekürzt]

void CRename2Dlg::OnBnClickedRename()
{	
    DIR *hdir; 
    struct dirent *entry; 

    hdir = opendir(&quot;k:/test&quot;); 
    chdir(&quot;k:/test&quot;);
    do 
    { 
        entry = readdir(hdir); 
        if (entry) 
        { 
            string a,b; 
            a = entry-&gt;d_name; 
            b = entry-&gt;d_name+4; 
            rename(a.c_str(),b.c_str()); 
        } 
    } while (entry); 
    closedir(hdir); 
}
</code></pre>
<p>Die Fehlermeldungen sind diese (sie sagen mir leider garnichts :():</p>
<blockquote>
<p>c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(198) : error C2065: 'DIR' : undeclared identifier<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(198) : error C2065: 'hdir' : undeclared identifier<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(201) : error C3861: 'opendir': identifier not found<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(202) : error C3861: 'chdir': identifier not found<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(205) : error C3861: 'readdir': identifier not found<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(208) : error C2065: 'string' : undeclared identifier<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(208) : error C2146: syntax error : missing ';' before identifier 'a'<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(208) : error C2065: 'a' : undeclared identifier<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(208) : error C2065: 'b' : undeclared identifier<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(209) : error C2027: use of undefined type 'CRename2Dlg::OnBnClickedRename::dirent'<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(199) : see declaration of 'CRename2Dlg::OnBnClickedRename::dirent'<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(209) : error C2227: left of '-&gt;d_name' must point to class/struct/union/generic type<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(210) : error C2027: use of undefined type 'CRename2Dlg::OnBnClickedRename::dirent'<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(199) : see declaration of 'CRename2Dlg::OnBnClickedRename::dirent'<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(210) : error C2227: left of '-&gt;d_name' must point to class/struct/union/generic type<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(211) : error C2228: left of '.c_str' must have class/struct/union<br />
type is ''unknown-type''<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(211) : error C2228: left of '.c_str' must have class/struct/union<br />
type is ''unknown-type''<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(214) : error C3861: 'closedir': identifier not found<br />
Build log was saved at &quot;file://c:\Dokumente und Einstellungen\dragosani\Eigene Dateien\Visual Studio 2005\Projects\Rename2\Rename2\Debug\BuildLog.htm&quot;<br />
Rename2 - 16 error(s), 0 warning(s)<br />
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========</p>
</blockquote>
<p>Könnt ihr damit etwas anfangen?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/176156/konsolenprogramm-läuft-selbes-programm-mit-quot-gui-quot-nicht</link><generator>RSS for Node</generator><lastBuildDate>Fri, 24 Apr 2026 09:30:51 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/176156.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 18 Mar 2007 13:58:37 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Konsolenprogramm läuft, selbes Programm mit &amp;quot;GUI&amp;quot; nicht on Sun, 18 Mar 2007 13:58:37 GMT]]></title><description><![CDATA[<p>Hm, ja da bin ich mal wieder. Es geht mal wieder um Dateioperationen - diesesmal aber mit &quot;GUI&quot;.</p>
<p>Folgendes Beispiel kann ich wunderbar als Konsolenprogramm im Dev-CPP kompilieren:</p>
<pre><code class="language-cpp">#include &lt;cstdlib&gt;
#include &lt;dirent.h&gt;
#include &lt;iostream&gt;
#include &lt;string&gt;  //für std::string

using namespace std;

int main(int argc, char *argv[])
{
    DIR *hdir;
    struct dirent *entry;
       hdir = opendir(&quot;./rename&quot;);
    chdir(&quot;./rename&quot;);

    cout &lt;&lt; &quot;Erfolgreich ins Verzeichnis gewechselt...&quot; &lt;&lt; endl;

    do
    {
        entry = readdir(hdir);
        if (entry)
        {
            cout &lt;&lt; entry-&gt;d_name &lt;&lt; endl;
            string a,b;
            a = entry-&gt;d_name;
            b = entry-&gt;d_name+4;
            cout &lt;&lt; b &lt;&lt; endl;
            rename(a.c_str(),b.c_str());
        }
    } while (entry);
    closedir(hdir);
    system(&quot;PAUSE&quot;);
    return EXIT_SUCCESS;
}
</code></pre>
<p>Nun dachte ich mir, ich versuche mich mal an einer kleinen GUI. Also versuchte ich es via M$ Visual C++ (2005) umzusetzten. Aber er kompiliert die Anweisungen im onClick nicht.</p>
<p>hier mal die entsprechenden Codezeilen:</p>
<pre><code class="language-cpp">#include &quot;stdafx.h&quot;
#include &quot;Rename2.h&quot;
#include &quot;Rename2Dlg.h&quot;
#include &lt;dirent&gt;
#include &lt;cstdlib&gt; 
#include &lt;iostream&gt; 
#include &lt;string&gt;  //für std::string 

[gekürzt]

void CRename2Dlg::OnBnClickedRename()
{	
    DIR *hdir; 
    struct dirent *entry; 

    hdir = opendir(&quot;k:/test&quot;); 
    chdir(&quot;k:/test&quot;);
    do 
    { 
        entry = readdir(hdir); 
        if (entry) 
        { 
            string a,b; 
            a = entry-&gt;d_name; 
            b = entry-&gt;d_name+4; 
            rename(a.c_str(),b.c_str()); 
        } 
    } while (entry); 
    closedir(hdir); 
}
</code></pre>
<p>Die Fehlermeldungen sind diese (sie sagen mir leider garnichts :():</p>
<blockquote>
<p>c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(198) : error C2065: 'DIR' : undeclared identifier<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(198) : error C2065: 'hdir' : undeclared identifier<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(201) : error C3861: 'opendir': identifier not found<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(202) : error C3861: 'chdir': identifier not found<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(205) : error C3861: 'readdir': identifier not found<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(208) : error C2065: 'string' : undeclared identifier<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(208) : error C2146: syntax error : missing ';' before identifier 'a'<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(208) : error C2065: 'a' : undeclared identifier<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(208) : error C2065: 'b' : undeclared identifier<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(209) : error C2027: use of undefined type 'CRename2Dlg::OnBnClickedRename::dirent'<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(199) : see declaration of 'CRename2Dlg::OnBnClickedRename::dirent'<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(209) : error C2227: left of '-&gt;d_name' must point to class/struct/union/generic type<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(210) : error C2027: use of undefined type 'CRename2Dlg::OnBnClickedRename::dirent'<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(199) : see declaration of 'CRename2Dlg::OnBnClickedRename::dirent'<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(210) : error C2227: left of '-&gt;d_name' must point to class/struct/union/generic type<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(211) : error C2228: left of '.c_str' must have class/struct/union<br />
type is ''unknown-type''<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(211) : error C2228: left of '.c_str' must have class/struct/union<br />
type is ''unknown-type''<br />
c:\dokumente und einstellungen\dragosani\eigene dateien\visual studio 2005\projects\rename2\rename2\rename2dlg.cpp(214) : error C3861: 'closedir': identifier not found<br />
Build log was saved at &quot;file://c:\Dokumente und Einstellungen\dragosani\Eigene Dateien\Visual Studio 2005\Projects\Rename2\Rename2\Debug\BuildLog.htm&quot;<br />
Rename2 - 16 error(s), 0 warning(s)<br />
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========</p>
</blockquote>
<p>Könnt ihr damit etwas anfangen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1247709</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1247709</guid><dc:creator><![CDATA[Dragosani]]></dc:creator><pubDate>Sun, 18 Mar 2007 13:58:37 GMT</pubDate></item><item><title><![CDATA[Reply to Konsolenprogramm läuft, selbes Programm mit &amp;quot;GUI&amp;quot; nicht on Sun, 18 Mar 2007 14:22:01 GMT]]></title><description><![CDATA[<p>jo der findet die Funktionen nicht ... und wenn du schon unter MFC was machst ... dann nutzt doch auch die Windows File/Directory Funktionen ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1247728</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1247728</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Sun, 18 Mar 2007 14:22:01 GMT</pubDate></item><item><title><![CDATA[Reply to Konsolenprogramm läuft, selbes Programm mit &amp;quot;GUI&amp;quot; nicht on Sun, 18 Mar 2007 14:24:07 GMT]]></title><description><![CDATA[<p>Und welche wären dies? Falls es aus den Beispielen nicht ersichtlich ist: ich bin ein sog. &quot;bloody noob&quot;.</p>
<p>Aber trotzdem verstehe ich nicht, wieso diese Funktionen auf einmal nicht mehr gehen sollen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1247733</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1247733</guid><dc:creator><![CDATA[Dragosani]]></dc:creator><pubDate>Sun, 18 Mar 2007 14:24:07 GMT</pubDate></item><item><title><![CDATA[Reply to Konsolenprogramm läuft, selbes Programm mit &amp;quot;GUI&amp;quot; nicht on Sun, 18 Mar 2007 14:41:37 GMT]]></title><description><![CDATA[<p>Hab gerade mal nachgeguckt ... den Header dirent sollte es garnicht geben. Müsste eigentlich ein UNIX-Header sein.</p>
<p>Also guck dir mal <a href="http://msdn2.microsoft.com/en-us/library/aa363879.aspx" rel="nofollow">http://msdn2.microsoft.com/en-us/library/aa363879.aspx</a> an ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1247748</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1247748</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Sun, 18 Mar 2007 14:41:37 GMT</pubDate></item><item><title><![CDATA[Reply to Konsolenprogramm läuft, selbes Programm mit &amp;quot;GUI&amp;quot; nicht on Sun, 18 Mar 2007 15:02:23 GMT]]></title><description><![CDATA[<p>Hm, kann sein, ich bin mir gerade nicht ganz sicher, ob ich den Header nicht aus dem MingW kopiert habe (probiere damit schon recht lange herum).</p>
<p>Wenn ich Deinen Link richtig verstehe, dann müßte MoveFile() ja genau das sein, was ich brauche, oder?</p>
<p>Sprich ich würde dann MoveFile(alterName, neuerName) aufrufen, oder? Wie kann ich dort dann die ersten 4 Zeichen weglassen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1247767</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1247767</guid><dc:creator><![CDATA[Dragosani]]></dc:creator><pubDate>Sun, 18 Mar 2007 15:02:23 GMT</pubDate></item><item><title><![CDATA[Reply to Konsolenprogramm läuft, selbes Programm mit &amp;quot;GUI&amp;quot; nicht on Sun, 18 Mar 2007 15:10:44 GMT]]></title><description><![CDATA[<p>Naja geh halt mit FindFirstFile usw durch ... und du kannst entweder die Klasse CString ... oder std::string oder char nutzen ... kommt drauf an ... C++ wäre CString und std::string ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1247780</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1247780</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Sun, 18 Mar 2007 15:10:44 GMT</pubDate></item><item><title><![CDATA[Reply to Konsolenprogramm läuft, selbes Programm mit &amp;quot;GUI&amp;quot; nicht on Sun, 18 Mar 2007 15:26:08 GMT]]></title><description><![CDATA[<p>Also irgendetwas verstehe ich anscheinend grundlegend noch nicht. Ich habe jetzt Testhalber mal geschrieben:</p>
<pre><code class="language-cpp">void CRename2Dlg::OnBnClickedRename()
{
	MoveFile(&quot;K:\\test\\1.mp3&quot;,&quot;K:\\test\\2.mp3&quot;);

}
</code></pre>
<p>Und natürlich oben &lt;windows.h&gt; inkludiert. Nur bekomme ich jetzt folgenden Fehler:</p>
<blockquote>
<p>error C2664: 'MoveFileW' : cannot convert parameter 1 from 'const char [14]' to 'LPCWSTR'<br />
Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast</p>
</blockquote>
<p>Wenn ich mir aber einige Beispiele im Netz ansehe, dann soll es doch genau so gehen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>Beispiel:<a href="http://www.online-tutorials.net/daten-ordner/dateien-ordner-kopieren-umbennenen/sourcecodes-t-16-11.html" rel="nofollow">http://www.online-tutorials.net/daten-ordner/dateien-ordner-kopieren-umbennenen/sourcecodes-t-16-11.html</a> um nur eines zu nennen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1247792</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1247792</guid><dc:creator><![CDATA[Dragosani]]></dc:creator><pubDate>Sun, 18 Mar 2007 15:26:08 GMT</pubDate></item><item><title><![CDATA[Reply to Konsolenprogramm läuft, selbes Programm mit &amp;quot;GUI&amp;quot; nicht on Sun, 18 Mar 2007 15:30:38 GMT]]></title><description><![CDATA[<p>Hmm ja du hast wohl UNICODE aktiviert ...</p>
<pre><code class="language-cpp">MoveFile(TEXT(&quot;K:\\test\\1.mp3&quot;), TEXT(&quot;K:\\test\\2.mp3&quot;));
</code></pre>
<p>...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1247794</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1247794</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Sun, 18 Mar 2007 15:30:38 GMT</pubDate></item><item><title><![CDATA[Reply to Konsolenprogramm läuft, selbes Programm mit &amp;quot;GUI&amp;quot; nicht on Sun, 18 Mar 2007 15:37:40 GMT]]></title><description><![CDATA[<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /> Ganz genau so klappt es! Jetzt probiere ich weiter mit den Strings herum.</p>
<p>Vielen Dank !</p>
<p>PS: Wie kann ich denn die UNICODE abstellen? Wäre ja schon ganz nett, wenn es ohne TEXT() ginge <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/1247797</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1247797</guid><dc:creator><![CDATA[Dragosani]]></dc:creator><pubDate>Sun, 18 Mar 2007 15:37:40 GMT</pubDate></item><item><title><![CDATA[Reply to Konsolenprogramm läuft, selbes Programm mit &amp;quot;GUI&amp;quot; nicht on Sun, 18 Mar 2007 16:58:35 GMT]]></title><description><![CDATA[<p>Guck mal in den Projekteinstellungen ... ist halt der Zeichensatz .. (Charset)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1247860</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1247860</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Sun, 18 Mar 2007 16:58:35 GMT</pubDate></item></channel></rss>