<?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[Beispielcode &#x27;Listener.cpp&#x27; mit der seriellen Schnittstelle]]></title><description><![CDATA[<p>Hello,</p>
<p>ich verwende gerade die Bibliothek von Ramon de Klein (<a href="http://www.codeproject.com/KB/system/serial.aspx?msg=3519759#xx3519759xx" rel="nofollow">http://www.codeproject.com/KB/system/serial.aspx?msg=3519759#xx3519759xx</a>) für die serielle Schnittstelle mit Visual Studio. Unten ist ein Teil des Beispiels „Listener.cpp“ zu sehen.</p>
<p>Frage: Soweit ich verstehe wird das Programm abgeschlossen wenn das Zeichen EOF (ASCII = 27) empfangen wird. Aber in der Wirklichkeit wird das Programm abgeschlossen solange eine Zeichenkette über die serielle Schnittstelle vorkommt. Habe ich was falsch verstanden?</p>
<pre><code class="language-cpp">if (eEvent &amp; CSerial::EEventRecv)
		{
			// Read data, until there is nothing left
			DWORD dwBytesRead = 0;
			char szBuffer[101];
			do
			{
				// Read data from the COM-port
				lLastError = serial.Read(szBuffer,sizeof(szBuffer)-1,&amp;dwBytesRead);
				if (lLastError != ERROR_SUCCESS)
					return ::ShowError(serial.GetLastError(), _T(&quot;Unable to read from COM-port.&quot;));

				if (dwBytesRead &gt; 0)
				{
					// Finalize the data, so it is a valid string
					szBuffer[dwBytesRead] = '\0';

					// Display the data
					printf(&quot;%s&quot;, szBuffer);

					// Check if EOF (CTRL+'[') has been specified
					if (strchr(szBuffer,EOF_Char))
						fContinue = false;
				}
			}
		    while (dwBytesRead == sizeof(szBuffer)-1);
		}
</code></pre>
<p>MfG<br />
Senmeis</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/271359/beispielcode-listener-cpp-mit-der-seriellen-schnittstelle</link><generator>RSS for Node</generator><lastBuildDate>Sat, 29 Aug 2026 14:01:16 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/271359.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 27 Jul 2010 09:05:33 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Beispielcode &#x27;Listener.cpp&#x27; mit der seriellen Schnittstelle on Tue, 27 Jul 2010 09:05:33 GMT]]></title><description><![CDATA[<p>Hello,</p>
<p>ich verwende gerade die Bibliothek von Ramon de Klein (<a href="http://www.codeproject.com/KB/system/serial.aspx?msg=3519759#xx3519759xx" rel="nofollow">http://www.codeproject.com/KB/system/serial.aspx?msg=3519759#xx3519759xx</a>) für die serielle Schnittstelle mit Visual Studio. Unten ist ein Teil des Beispiels „Listener.cpp“ zu sehen.</p>
<p>Frage: Soweit ich verstehe wird das Programm abgeschlossen wenn das Zeichen EOF (ASCII = 27) empfangen wird. Aber in der Wirklichkeit wird das Programm abgeschlossen solange eine Zeichenkette über die serielle Schnittstelle vorkommt. Habe ich was falsch verstanden?</p>
<pre><code class="language-cpp">if (eEvent &amp; CSerial::EEventRecv)
		{
			// Read data, until there is nothing left
			DWORD dwBytesRead = 0;
			char szBuffer[101];
			do
			{
				// Read data from the COM-port
				lLastError = serial.Read(szBuffer,sizeof(szBuffer)-1,&amp;dwBytesRead);
				if (lLastError != ERROR_SUCCESS)
					return ::ShowError(serial.GetLastError(), _T(&quot;Unable to read from COM-port.&quot;));

				if (dwBytesRead &gt; 0)
				{
					// Finalize the data, so it is a valid string
					szBuffer[dwBytesRead] = '\0';

					// Display the data
					printf(&quot;%s&quot;, szBuffer);

					// Check if EOF (CTRL+'[') has been specified
					if (strchr(szBuffer,EOF_Char))
						fContinue = false;
				}
			}
		    while (dwBytesRead == sizeof(szBuffer)-1);
		}
</code></pre>
<p>MfG<br />
Senmeis</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1932425</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1932425</guid><dc:creator><![CDATA[senmeis]]></dc:creator><pubDate>Tue, 27 Jul 2010 09:05:33 GMT</pubDate></item><item><title><![CDATA[Reply to Beispielcode &#x27;Listener.cpp&#x27; mit der seriellen Schnittstelle on Tue, 27 Jul 2010 09:24:24 GMT]]></title><description><![CDATA[<p>Es wird zwar geprüft, ob das EOF-Zeichen empfangen wurde, die Konsequenz dieser Prüfung wird aber komplett ignoriert. Tatsächlich wird so lange gelesen, wie auch etwas empfangen wird.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1932437</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1932437</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Tue, 27 Jul 2010 09:24:24 GMT</pubDate></item></channel></rss>