<?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[Ausgabe falsch]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe folgende Probleme mit meiner Ausgabe und würde mich über schnelle Hilfe Eurerseits freuen</p>
<p>Problem Nr1:</p>
<pre><code class="language-cpp">// Insert SSID (Column 1)
m_BssidListCtrl.SetItemText( i, 1, (LPCTSTR ) zPtr-&gt;Ssid.Ssid  );
</code></pre>
<p>Ich bekomme zwar eine Ausgabe, aber leider nur chinesische Zeichen. Die Werte sind aber laut debugger richtig in dem Array Ssid abgespeichert.<br />
Ssid -&gt; ist ein UCHAR[32] Array</p>
<p>Problem Nr2:</p>
<pre><code class="language-cpp">// Insert RSSI (Column 2)
strTemp.Format( &quot;%d dBm&quot;, zPtr-&gt;Rssi );
m_BssidListCtrl.SetItemText( i, 2, strTemp );
</code></pre>
<p>Die Rssi ist eine LONG Variable, und soll natürlich als Zahl ausgegeben werden.<br />
Folgenden Fehler bekomme ich wenn ich kompiliere:</p>
<blockquote>
<p>error C2664: 'void ATL::CStringT&lt;BaseType,StringTraits&gt;::Format(const wchar_t *,...)': Konvertierung des Parameters 1 von 'const char [7]' in 'const wchar_t *' nicht möglich</p>
</blockquote>
<p>Leider kann ich nicht erkennen, warum es dort den Fehler gibt.</p>
<p>Ich bedanke mich schon mal im Voraus für Eure Hilfe.</p>
<p>Gruß mark</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/181019/ausgabe-falsch</link><generator>RSS for Node</generator><lastBuildDate>Fri, 17 Apr 2026 23:42:30 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/181019.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 09 May 2007 09:58:30 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Ausgabe falsch on Wed, 09 May 2007 09:58:30 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe folgende Probleme mit meiner Ausgabe und würde mich über schnelle Hilfe Eurerseits freuen</p>
<p>Problem Nr1:</p>
<pre><code class="language-cpp">// Insert SSID (Column 1)
m_BssidListCtrl.SetItemText( i, 1, (LPCTSTR ) zPtr-&gt;Ssid.Ssid  );
</code></pre>
<p>Ich bekomme zwar eine Ausgabe, aber leider nur chinesische Zeichen. Die Werte sind aber laut debugger richtig in dem Array Ssid abgespeichert.<br />
Ssid -&gt; ist ein UCHAR[32] Array</p>
<p>Problem Nr2:</p>
<pre><code class="language-cpp">// Insert RSSI (Column 2)
strTemp.Format( &quot;%d dBm&quot;, zPtr-&gt;Rssi );
m_BssidListCtrl.SetItemText( i, 2, strTemp );
</code></pre>
<p>Die Rssi ist eine LONG Variable, und soll natürlich als Zahl ausgegeben werden.<br />
Folgenden Fehler bekomme ich wenn ich kompiliere:</p>
<blockquote>
<p>error C2664: 'void ATL::CStringT&lt;BaseType,StringTraits&gt;::Format(const wchar_t *,...)': Konvertierung des Parameters 1 von 'const char [7]' in 'const wchar_t *' nicht möglich</p>
</blockquote>
<p>Leider kann ich nicht erkennen, warum es dort den Fehler gibt.</p>
<p>Ich bedanke mich schon mal im Voraus für Eure Hilfe.</p>
<p>Gruß mark</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1281422</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1281422</guid><dc:creator><![CDATA[MarkWeber]]></dc:creator><pubDate>Wed, 09 May 2007 09:58:30 GMT</pubDate></item><item><title><![CDATA[Reply to Ausgabe falsch on Wed, 09 May 2007 10:06:15 GMT]]></title><description><![CDATA[<p>@1: Arbeitest du mit ANSI- oder UNICODE-Einstellungen? Wenn letzteres der Fall ist, mußt du die auszugebenden Daten mit A2T() in UNICODE-Zeichen umrechnen (such mal nach &quot;String Conversion Macros&quot; in der MSDN).</p>
<p>(der explizite Typ-Cast verhindert, daß dort eine ähnliche Meldung kommt wie im zweiten Fall)</p>
<p>@2: Das ist ganz offensichtlich ein UNICODE-Problem - die Lösung lautet _T() oder TEXT():</p>
<pre><code class="language-cpp">// Insert RSSI (Column 2)
strTemp.Format( _T(&quot;%d dBm&quot;), zPtr-&gt;Rssi );
m_BssidListCtrl.SetItemText( i, 2, strTemp );
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1281428</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1281428</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Wed, 09 May 2007 10:06:15 GMT</pubDate></item><item><title><![CDATA[Reply to Ausgabe falsch on Wed, 09 May 2007 10:34:17 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>vielen Dank. So direkt mal registriert.<br />
Ich verwende UNICODE.</p>
<p>Ich habe mal folgendes geändert:</p>
<pre><code class="language-cpp">// Insert SSID (Column 1)
m_BssidListCtrl.SetItemText( i, 1, (LPCTSTR )(TEXT( &quot;%.*s&quot; ), zPtr-&gt;Ssid.SsidLength, zPtr-&gt;Ssid.Ssid  ) );
</code></pre>
<p>Aber leider immer noch komische Zeichen als Ausgabe <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
<p>Auch das zweite Problem bleibt weiterhin eins:</p>
<pre><code class="language-cpp">strTemp.Format( &quot;%d dBm&quot;, _T(zPtr-&gt;Rssi) );
m_BssidListCtrl.SetItemText( i, 2, strTemp );
</code></pre>
<blockquote>
<p>error C2065: 'LzPtr': nichtdeklarierter Bezeichner<br />
error C2227: Links von &quot;-&gt;Rssi&quot; muss sich ein Zeiger auf Klassen-/Struktur-/Union-/generischen Typ befinden.<br />
error C2664: 'void ATL::CStringT&lt;BaseType,StringTraits&gt;::Format(const wchar_t *,...)': Konvertierung des Parameters 1 von 'const char [7]' in 'const wchar_t *' nicht möglich</p>
</blockquote>
<p>Vlt sehe ich im mom auch den Wald vor lauter Bäumen nicht, weil ich mich so darüber ärgere.<br />
Vlt muss ich auch noch eine bestimmte Einstelluung in den Projekteigenschaften vornehmen ?!</p>
<p>EDIT:</p>
<p>Wenn ich das ganze auf &quot;MultiByte&quot; umstelle bekomme ich folgenden Fehler:</p>
<blockquote>
<p>mt.exe : general error c101008a: Failed to save the updated manifest to the file &quot;.\Debug\MFC_Test.exe.embed.manifest&quot;. Falscher Parameter.</p>
</blockquote>
]]></description><link>https://www.c-plusplus.net/forum/post/1281448</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1281448</guid><dc:creator><![CDATA[LosWebos]]></dc:creator><pubDate>Wed, 09 May 2007 10:34:17 GMT</pubDate></item><item><title><![CDATA[Reply to Ausgabe falsch on Wed, 09 May 2007 10:50:43 GMT]]></title><description><![CDATA[<p>LosWebos schrieb:</p>
<blockquote>
<p>vielen Dank. So direkt mal registriert.<br />
Ich verwende UNICODE.</p>
</blockquote>
<p>OK, das erklärt einiges <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<blockquote>
<p>Ich habe mal folgendes geändert:</p>
<pre><code class="language-cpp">// Insert SSID (Column 1)
m_BssidListCtrl.SetItemText( i, 1, (LPCTSTR )(TEXT( &quot;%.*s&quot; ), zPtr-&gt;Ssid.SsidLength, zPtr-&gt;Ssid.Ssid  ) );
</code></pre>
<p>Aber leider immer noch komische Zeichen als Ausgabe <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
</blockquote>
<p>Der Cast dort ist immer noch falsch<sup>*</sup> - TCHAR ist ein wchar_t (also &gt;=2 Byte groß), UCHAR dürfte 'unsigned char' sein (1 Byte) - durch den Cast werden jeweils 2+ Zeichen deines Arrays zu einem wchar_t zusammengefasst und das ergibt dann normalerweise irgendwelche Sonderzeichen jenseits des normalen ASCII-Zeichensatzes.</p>
<p>Du mußt dein Array manuell und zeichenweise in wchar's umwandeln, um etwas für SetItemText() verwertbares herauszubekommen:</p>
<pre><code class="language-cpp">//am Anfang der Funktion
USES_CONVERSION;
...
m_BssidListCtrl.SetItemText( i, 1, A2CT(zPtr-&gt;Ssid.Ssid  ) );
</code></pre>
<blockquote>
<p>Auch das zweite Problem bleibt weiterhin eins:</p>
<pre><code class="language-cpp">strTemp.Format( &quot;%d dBm&quot;, _T(zPtr-&gt;Rssi) );
m_BssidListCtrl.SetItemText( i, 2, strTemp );
</code></pre>
</blockquote>
<p>wlkikiv - du mußt den ersten Parameter von Format() (das String-Literal) in _T() einklammern.</p>
<p><sup>(*)</sup> diese Ausführungen beziehen sich nur auf UNICODE-Einstellungen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1281470</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1281470</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Wed, 09 May 2007 10:50:43 GMT</pubDate></item><item><title><![CDATA[Reply to Ausgabe falsch on Wed, 09 May 2007 11:06:38 GMT]]></title><description><![CDATA[<blockquote>
<p>wlkikiv - du mußt den ersten Parameter von Format() (das String-Literal) in _T() einklammern.</p>
</blockquote>
<p>das stimmt wohl <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="🙂"
    /> Jaja der Wald</p>
<p>Leider habe ich immer noch chinesische Zeichen.<br />
Aber ich habe nun eine Lösung gefunden:</p>
<p>Ich habe das Projekt neu angelegt, und bei der Erstellung den hacken bei<br />
&quot;UNICODE Bibliotheck verwenden&quot; weggemacht.</p>
<p>Nun läßt sich mein Projekt wunderbar kompilieren und meine Ausgabe funktioniert wie gewollt.</p>
<pre><code class="language-cpp">// Insert SSID (Column 1)
m_BssidListCtrl.SetItemText( i, 1, (LPCTSTR )(TEXT( &quot;%.*s&quot; ), zPtr-&gt;Ssid.SsidLength, zPtr-&gt;Ssid.Ssid  ) );

// Insert RSSI (Column 2)
strTemp.Format( _T(&quot;%d dBm&quot;), zPtr-&gt;get_RSSI() );
m_BssidListCtrl.SetItemText( i, 2, strTemp );
</code></pre>
<p>Vielen Lieben Dank.</p>
<p>Gruß Mark Weber</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1281484</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1281484</guid><dc:creator><![CDATA[LosWebos]]></dc:creator><pubDate>Wed, 09 May 2007 11:06:38 GMT</pubDate></item><item><title><![CDATA[Reply to Ausgabe falsch on Wed, 09 May 2007 11:12:15 GMT]]></title><description><![CDATA[<p>Hast du mal diese Variante ausprobiert? Wenn ja, was hatte dein Compiler dagegen?</p>
<p>CStoll schrieb:</p>
<blockquote>
<pre><code class="language-cpp">//am Anfang der Funktion
USES_CONVERSION;
...
m_BssidListCtrl.SetItemText( i, 1, A2CT(zPtr-&gt;Ssid.Ssid  ) );
</code></pre>
</blockquote>
<p>PS: Das Gebastel', das du als letzten Parameter an SetItemText übergibst, ist (sanft formuliert) unsinnig. Nachdem der Komma-Operator dort durchgerannt ist, wird der Wert '(LPCTSTR )(zPtr-&gt;Ssid.Ssid)' weitergegeben - und damit stehst du auch wieder am Anfang.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1281492</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1281492</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Wed, 09 May 2007 11:12:15 GMT</pubDate></item><item><title><![CDATA[Reply to Ausgabe falsch on Wed, 09 May 2007 11:30:29 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>die Variante hatte ich probiert und folgende Fehlermeldung wurde ausgegeben:</p>
<blockquote>
<p>error C2440: '=': 'UCHAR [32]' kann nicht in 'LPCSTR' konvertiert werden</p>
</blockquote>
<p>Das zweite &quot;gebastel&quot; werde ich nochmal überdenken, aber ich bin erst einmal froh, dass überhaupt was ausgegeben wird <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/1281506</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1281506</guid><dc:creator><![CDATA[LosWebos]]></dc:creator><pubDate>Wed, 09 May 2007 11:30:29 GMT</pubDate></item><item><title><![CDATA[Reply to Ausgabe falsch on Wed, 09 May 2007 15:12:38 GMT]]></title><description><![CDATA[<p>Das ist ja auch normal ... LPCSTR ist ein konstanter signed char bzw. ein char(wird ja hier nochmal unterschieden, d.h. es gibt 3 chars <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /> ) Zeiger ... du hast aber einen unsigned ...</p>
<pre><code class="language-cpp">m_BssidListCtrl.SetItemText(i, 1, /*(LPCTSTR) AH. Wenn du jetzt UNICODE an hast steht da nen Cast zu const wchar_t .. so nen cast zu const char* */
/*(TEXT( &quot;%.*s&quot; ), sinfrei ... */zPtr-&gt;Ssid.SsidLength, zPtr-&gt;Ssid.Ssid  /*) */);
</code></pre>
<p>...<br />
=&gt;</p>
<pre><code class="language-cpp">#ifdef UNICODE
    USES_CONVERSION;
    m_BssidListCtrl.SetItemText(i, 1, A2CT(reinterpret_cast&lt;char*&gt;(zPtr-&gt;Ssid.Ssid))); // Wir müssen erstmal in char casten und dann noch in wchar_t umwandeln lassen.
#else // !UNICODE
    m_BssidListCtrl.SetItemText(i, 1, reinterpret_cast&lt;char*&gt;(zPtr-&gt;Ssid.Ssid)); // einfach in char casten ...
#endif
</code></pre>
<p>...</p>
<pre><code class="language-cpp">strTemp.Format(TEXT(&quot;%d dBm&quot;), zPtr-&gt;get_RSSI()); // _T liegt normal in tchar.h ... nen extra Header =&gt; unnötig, lieber TEXT() ... das liegt in windows.h :)
m_BssidListCtrl.SetItemText(i, 2, strTemp);
</code></pre>
<p>So und wenn de das so hast stellst du dein Projekt wieder schön auf UNICODE um und es geht trotzdem <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/1281744</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1281744</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Wed, 09 May 2007 15:12:38 GMT</pubDate></item><item><title><![CDATA[Reply to Ausgabe falsch on Fri, 11 May 2007 09:54:39 GMT]]></title><description><![CDATA[<p>Gut dass es Leute gibt, die sich damit auskennen <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>
<p>Vielen lieben Dank, es funktioniert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1282890</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1282890</guid><dc:creator><![CDATA[LosWebos]]></dc:creator><pubDate>Fri, 11 May 2007 09:54:39 GMT</pubDate></item></channel></rss>