<?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[Fehler beim erstellen]]></title><description><![CDATA[<p>Hi.<br />
Ich wollte mal mein Project über diese Batch-Erstellung erstellen.<br />
Einige der Fehler konnte ich shcon ganz gut beheben,<br />
wollte, aber dennoch Fragen ob es da passendere möglichkeiten gibt.<br />
z.b. habe ich alle MessageBox's nun in der art:</p>
<pre><code class="language-cpp">MessageBox(NULL, TEXT(&quot;Ausgabetext&quot;), TEXT(&quot;Titel&quot;), MB_OK);
</code></pre>
<p>dieses TEXT() musste ich machen weil sonst der compiler rumnörgelt.<br />
ist diese art in dieser ausführung okay oder gibt es da weitaus bessere lösungen?</p>
<p>ein anderes probleme habe ich beim zuweisen von strings.<br />
hier mal der code-ausschnitt:</p>
<pre><code class="language-cpp">void FillList(HWND hwnd)
{
	WIN32_FIND_DATA fd;
	HANDLE fHandle;
	int iCount=0;
	int iFileCount=0;
	fHandle=FindFirstFile(TEXT(&quot;*.obj&quot;),&amp;fd);
	iFileCount++;
	while(FindNextFile(fHandle, &amp;fd))
		iFileCount++;
	FindClose(fHandle);
	LItem = new ListenItem[iFileCount];
	fHandle=FindFirstFile(TEXT(&quot;*.obj&quot;),&amp;fd);
	SendMessage(hwnd, LB_ADDSTRING, 0, (LPARAM)fd.cFileName);
	LItem[iCount].cFilename=fd.cFileName;
	if(strstr(fd.cFileName,TEXT(&quot;testmap&quot;)))
		SendMessage(hwnd, LB_SETCURSEL, 0, 0);
	iCount++;
	while(FindNextFile(fHandle,&amp;fd))
	{
		SendMessage(hwnd, LB_ADDSTRING, 0, (LPARAM)fd.cFileName);
		LItem[iCount].cFilename=fd.cFileName;
		if(strstr(fd.cFileName,&quot;testmap&quot;))
			SendMessage(hwnd, LB_SETCURSEL, iCount, 0);
		iCount++;
	}
	FindClose(fHandle);
}
</code></pre>
<p>und dazu habe ich folgende fehlermeldung:</p>
<pre><code>.\Main.cpp(239) : error C2679: Binärer Operator '=': Es konnte kein Operator gefunden werden, der einen rechtsseitigen Operanden vom Typ 'WCHAR [260]' akzeptiert (oder keine geeignete Konvertierung möglich)
        C:\Programme\Microsoft Visual Studio 9.0\VC\include\xstring(914): kann 'std::basic_string&lt;_Elem,_Traits,_Ax&gt; &amp;std::basic_string&lt;_Elem,_Traits,_Ax&gt;::operator =(const std::basic_string&lt;_Elem,_Traits,_Ax&gt; &amp;)' sein
        with
        [
            _Elem=char,
            _Traits=std::char_traits&lt;char&gt;,
            _Ax=std::allocator&lt;char&gt;
        ]
        C:\Programme\Microsoft Visual Studio 9.0\VC\include\xstring(919): oder &quot;std::basic_string&lt;_Elem,_Traits,_Ax&gt; &amp;std::basic_string&lt;_Elem,_Traits,_Ax&gt;::operator =(const _Elem *)&quot;
        with
        [
            _Elem=char,
            _Traits=std::char_traits&lt;char&gt;,
            _Ax=std::allocator&lt;char&gt;
        ]
        C:\Programme\Microsoft Visual Studio 9.0\VC\include\xstring(924): oder &quot;std::basic_string&lt;_Elem,_Traits,_Ax&gt; &amp;std::basic_string&lt;_Elem,_Traits,_Ax&gt;::operator =(_Elem)&quot;
        with
        [
            _Elem=char,
            _Traits=std::char_traits&lt;char&gt;,
            _Ax=std::allocator&lt;char&gt;
        ]
        bei Anpassung der Argumentliste '(std::string, WCHAR [260])'
.\Main.cpp(240) : error C2665: &quot;strstr&quot;: Durch keine der 2 Überladungen konnten alle Argumenttypen konvertiert werden.
        C:\Programme\Microsoft Visual Studio 9.0\VC\include\string.h(165): kann 'const char *strstr(const char *,const char *)' sein
        C:\Programme\Microsoft Visual Studio 9.0\VC\include\string.h(189): oder &quot;char *strstr(char *,const char *)&quot;
        C:\Programme\Microsoft Visual Studio 9.0\VC\include\string.h(165): oder &quot;const char *strstr(const char *,const char *)&quot;
        C:\Programme\Microsoft Visual Studio 9.0\VC\include\string.h(189): oder &quot;char *strstr(char *,const char *)&quot;
        bei Anpassung der Argumentliste '(WCHAR [260], const wchar_t [4])'
</code></pre>
<p>die verweise sind auf die zeilen mit:</p>
<pre><code>LItem[iCount].cFilename=fd.cFileName;
if(strstr(fd.cFileName,TEXT(&quot;testmap&quot;)))
</code></pre>
<p>(cFilename ist ein std::string)</p>
<p>hat vllt jemand ein tipp, wie ich diese fehler beheben kann?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/252135/fehler-beim-erstellen</link><generator>RSS for Node</generator><lastBuildDate>Tue, 15 Sep 2026 03:59:19 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/252135.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 15 Oct 2009 09:43:04 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Fehler beim erstellen on Thu, 15 Oct 2009 09:44:57 GMT]]></title><description><![CDATA[<p>Hi.<br />
Ich wollte mal mein Project über diese Batch-Erstellung erstellen.<br />
Einige der Fehler konnte ich shcon ganz gut beheben,<br />
wollte, aber dennoch Fragen ob es da passendere möglichkeiten gibt.<br />
z.b. habe ich alle MessageBox's nun in der art:</p>
<pre><code class="language-cpp">MessageBox(NULL, TEXT(&quot;Ausgabetext&quot;), TEXT(&quot;Titel&quot;), MB_OK);
</code></pre>
<p>dieses TEXT() musste ich machen weil sonst der compiler rumnörgelt.<br />
ist diese art in dieser ausführung okay oder gibt es da weitaus bessere lösungen?</p>
<p>ein anderes probleme habe ich beim zuweisen von strings.<br />
hier mal der code-ausschnitt:</p>
<pre><code class="language-cpp">void FillList(HWND hwnd)
{
	WIN32_FIND_DATA fd;
	HANDLE fHandle;
	int iCount=0;
	int iFileCount=0;
	fHandle=FindFirstFile(TEXT(&quot;*.obj&quot;),&amp;fd);
	iFileCount++;
	while(FindNextFile(fHandle, &amp;fd))
		iFileCount++;
	FindClose(fHandle);
	LItem = new ListenItem[iFileCount];
	fHandle=FindFirstFile(TEXT(&quot;*.obj&quot;),&amp;fd);
	SendMessage(hwnd, LB_ADDSTRING, 0, (LPARAM)fd.cFileName);
	LItem[iCount].cFilename=fd.cFileName;
	if(strstr(fd.cFileName,TEXT(&quot;testmap&quot;)))
		SendMessage(hwnd, LB_SETCURSEL, 0, 0);
	iCount++;
	while(FindNextFile(fHandle,&amp;fd))
	{
		SendMessage(hwnd, LB_ADDSTRING, 0, (LPARAM)fd.cFileName);
		LItem[iCount].cFilename=fd.cFileName;
		if(strstr(fd.cFileName,&quot;testmap&quot;))
			SendMessage(hwnd, LB_SETCURSEL, iCount, 0);
		iCount++;
	}
	FindClose(fHandle);
}
</code></pre>
<p>und dazu habe ich folgende fehlermeldung:</p>
<pre><code>.\Main.cpp(239) : error C2679: Binärer Operator '=': Es konnte kein Operator gefunden werden, der einen rechtsseitigen Operanden vom Typ 'WCHAR [260]' akzeptiert (oder keine geeignete Konvertierung möglich)
        C:\Programme\Microsoft Visual Studio 9.0\VC\include\xstring(914): kann 'std::basic_string&lt;_Elem,_Traits,_Ax&gt; &amp;std::basic_string&lt;_Elem,_Traits,_Ax&gt;::operator =(const std::basic_string&lt;_Elem,_Traits,_Ax&gt; &amp;)' sein
        with
        [
            _Elem=char,
            _Traits=std::char_traits&lt;char&gt;,
            _Ax=std::allocator&lt;char&gt;
        ]
        C:\Programme\Microsoft Visual Studio 9.0\VC\include\xstring(919): oder &quot;std::basic_string&lt;_Elem,_Traits,_Ax&gt; &amp;std::basic_string&lt;_Elem,_Traits,_Ax&gt;::operator =(const _Elem *)&quot;
        with
        [
            _Elem=char,
            _Traits=std::char_traits&lt;char&gt;,
            _Ax=std::allocator&lt;char&gt;
        ]
        C:\Programme\Microsoft Visual Studio 9.0\VC\include\xstring(924): oder &quot;std::basic_string&lt;_Elem,_Traits,_Ax&gt; &amp;std::basic_string&lt;_Elem,_Traits,_Ax&gt;::operator =(_Elem)&quot;
        with
        [
            _Elem=char,
            _Traits=std::char_traits&lt;char&gt;,
            _Ax=std::allocator&lt;char&gt;
        ]
        bei Anpassung der Argumentliste '(std::string, WCHAR [260])'
.\Main.cpp(240) : error C2665: &quot;strstr&quot;: Durch keine der 2 Überladungen konnten alle Argumenttypen konvertiert werden.
        C:\Programme\Microsoft Visual Studio 9.0\VC\include\string.h(165): kann 'const char *strstr(const char *,const char *)' sein
        C:\Programme\Microsoft Visual Studio 9.0\VC\include\string.h(189): oder &quot;char *strstr(char *,const char *)&quot;
        C:\Programme\Microsoft Visual Studio 9.0\VC\include\string.h(165): oder &quot;const char *strstr(const char *,const char *)&quot;
        C:\Programme\Microsoft Visual Studio 9.0\VC\include\string.h(189): oder &quot;char *strstr(char *,const char *)&quot;
        bei Anpassung der Argumentliste '(WCHAR [260], const wchar_t [4])'
</code></pre>
<p>die verweise sind auf die zeilen mit:</p>
<pre><code>LItem[iCount].cFilename=fd.cFileName;
if(strstr(fd.cFileName,TEXT(&quot;testmap&quot;)))
</code></pre>
<p>(cFilename ist ein std::string)</p>
<p>hat vllt jemand ein tipp, wie ich diese fehler beheben kann?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1792822</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1792822</guid><dc:creator><![CDATA[Eroda]]></dc:creator><pubDate>Thu, 15 Oct 2009 09:44:57 GMT</pubDate></item><item><title><![CDATA[Reply to Fehler beim erstellen on Thu, 15 Oct 2009 10:48:13 GMT]]></title><description><![CDATA[<p>Benutze <code>std::wstring</code> .</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1792837</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1792837</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Thu, 15 Oct 2009 10:48:13 GMT</pubDate></item></channel></rss>