<?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[Wieso ist Cserialwnd.read auf 8 Byte begrenzt?]]></title><description><![CDATA[<p>Hallo,<br />
ich schicke an meine Anwendung serielle Daten<br />
(mit der CSeriel) und lasse diese an einem Eingabefeld,<br />
das ich mit einer String Variablen (m_anzeige) verbunden habe, anzeigen.<br />
Es funktioniert alles einwandfrei, nur wenn ich längere<br />
Strings schicke(länger als 9 Zeichen)werden sie im Eingabefeld<br />
einfach abgeschnitten (natürlich ist das Feld groß genug <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>
<p>Vieleicht seht ihr das Problem:</p>
<pre><code>LRESULT CSvenDlg::OnSerialMsg (WPARAM wParam, LPARAM /*lParam*/) 
{    
	//Wenn eine Nachricht kommt tue diest

	do{							
		serialwnd.Read(abBuffer,sizeof(abBuffer),&amp;dwBytesRead);								
		if (dwBytesRead &gt; 0)									

		{
			abBuffer[dwBytesRead]= 0;							
			m_anzeige=abBuffer;													
		}

	}
	while (dwBytesRead == sizeof (abBuffer)); // Schleifenbedingung

UpdateData(false);
serialwnd.Close();
memset(abBuffer, 0, sizeof(abBuffer));
serialwnd.Open(_T(&quot;COM1&quot;), GetSafeHwnd(), WM_NULL);	

    return 0; 

}
</code></pre>
<p>Viele Grüße<br />
Sven</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/153679/wieso-ist-cserialwnd-read-auf-8-byte-begrenzt</link><generator>RSS for Node</generator><lastBuildDate>Fri, 24 Jul 2026 08:43:52 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/153679.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 19 Jul 2006 15:24:48 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Wieso ist Cserialwnd.read auf 8 Byte begrenzt? on Wed, 19 Jul 2006 17:51:44 GMT]]></title><description><![CDATA[<p>Hallo,<br />
ich schicke an meine Anwendung serielle Daten<br />
(mit der CSeriel) und lasse diese an einem Eingabefeld,<br />
das ich mit einer String Variablen (m_anzeige) verbunden habe, anzeigen.<br />
Es funktioniert alles einwandfrei, nur wenn ich längere<br />
Strings schicke(länger als 9 Zeichen)werden sie im Eingabefeld<br />
einfach abgeschnitten (natürlich ist das Feld groß genug <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>
<p>Vieleicht seht ihr das Problem:</p>
<pre><code>LRESULT CSvenDlg::OnSerialMsg (WPARAM wParam, LPARAM /*lParam*/) 
{    
	//Wenn eine Nachricht kommt tue diest

	do{							
		serialwnd.Read(abBuffer,sizeof(abBuffer),&amp;dwBytesRead);								
		if (dwBytesRead &gt; 0)									

		{
			abBuffer[dwBytesRead]= 0;							
			m_anzeige=abBuffer;													
		}

	}
	while (dwBytesRead == sizeof (abBuffer)); // Schleifenbedingung

UpdateData(false);
serialwnd.Close();
memset(abBuffer, 0, sizeof(abBuffer));
serialwnd.Open(_T(&quot;COM1&quot;), GetSafeHwnd(), WM_NULL);	

    return 0; 

}
</code></pre>
<p>Viele Grüße<br />
Sven</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1100491</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100491</guid><dc:creator><![CDATA[Sveniemenie]]></dc:creator><pubDate>Wed, 19 Jul 2006 17:51:44 GMT</pubDate></item><item><title><![CDATA[Reply to Wieso ist Cserialwnd.read auf 8 Byte begrenzt? on Wed, 19 Jul 2006 15:29:29 GMT]]></title><description><![CDATA[<p>Und wie groß ist abBuffer? Denn du zeigst maximal an, was da reinpasst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1100494</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100494</guid><dc:creator><![CDATA[MFK]]></dc:creator><pubDate>Wed, 19 Jul 2006 15:29:29 GMT</pubDate></item><item><title><![CDATA[Reply to Wieso ist Cserialwnd.read auf 8 Byte begrenzt? on Wed, 19 Jul 2006 15:33:10 GMT]]></title><description><![CDATA[<pre><code>BYTE abBuffer[100];
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1100497</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100497</guid><dc:creator><![CDATA[Sveniemenie]]></dc:creator><pubDate>Wed, 19 Jul 2006 15:33:10 GMT</pubDate></item><item><title><![CDATA[Reply to Wieso ist Cserialwnd.read auf 8 Byte begrenzt? on Wed, 19 Jul 2006 16:05:39 GMT]]></title><description><![CDATA[<p>Ich machs so:</p>
<pre><code class="language-cpp">DWORD dwBytesRead = 0;
BYTE  abBuffer[100];
	do
		{
			// Read data from the COM-port
			m_serial.Read(abBuffer,sizeof(abBuffer),&amp;dwBytesRead);
			abBuffer[dwBytesRead] = '\0';
		}
	while (dwBytesRead == sizeof(abBuffer));
</code></pre>
<p>und bei mir geht das problemlos. Allerdings sind meine Stringlängen nur 14-16 Zeichen groß. Kann Dein Eingabefeld auch so viele Zeichen darstellen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1100515</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100515</guid><dc:creator><![CDATA[AndyDD]]></dc:creator><pubDate>Wed, 19 Jul 2006 16:05:39 GMT</pubDate></item><item><title><![CDATA[Reply to Wieso ist Cserialwnd.read auf 8 Byte begrenzt? on Wed, 19 Jul 2006 17:21:51 GMT]]></title><description><![CDATA[<p>Ja aber ich habs doch genauso wie du gemacht <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="😮"
    /><br />
Und um die Stringlänge des Anzeigefeldeszu testen habe ich folgendes gemacht:<br />
In die Funktion des OK Buttons:</p>
<pre><code>m_anzeige=&quot;Haaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaallllllllllllllllloo&quot;;
UpdateData(false);
</code></pre>
<p>geschrieben.</p>
<p>Das geht tadelos.<br />
Was kann das nur sein.<br />
Wird die Speichergröße<br />
( abBuffer[dwBytesRead]= 0)<br />
vieleicht zu früh begrenzt?<br />
Ne kann ja eigendlich auch nicht sein .Hmmm was ist ads nur? <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1100530</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100530</guid><dc:creator><![CDATA[Sveniemenie]]></dc:creator><pubDate>Wed, 19 Jul 2006 17:21:51 GMT</pubDate></item><item><title><![CDATA[Reply to Wieso ist Cserialwnd.read auf 8 Byte begrenzt? on Wed, 19 Jul 2006 17:50:14 GMT]]></title><description><![CDATA[<p>Ich habe nun &amp;dwBytesRead anzeigen lassen und<br />
festgestellt das die Zahl kontinuierlich 8 ist .<br />
Das heißt serialwnd.Read ließt immer nur 8 Byte zur Zeit vom Port.<br />
Wie kann ich dieser Sache den Herr werden, wenns nun mal mehr als 8 sind?</p>
<p>Gruß<br />
Sven</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1100563</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1100563</guid><dc:creator><![CDATA[Sveniemenie]]></dc:creator><pubDate>Wed, 19 Jul 2006 17:50:14 GMT</pubDate></item></channel></rss>