<?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[RS232 ansteuern - Fehler]]></title><description><![CDATA[<p>Hallo ihr,</p>
<p>ich habe mich zwar mit der Suche bemüht, wurde jedoch leider nicht fündig.</p>
<p>Ich möchte via createFile ein Handle auf meine Com-Schnittstelle bekommen:<br />
this-&gt;comhandle = CreateFile(name,<br />
GENERIC_READ | GENERIC_WRITE,<br />
0, // exclusive access<br />
NULL, // no security<br />
OPEN_EXISTING,<br />
0, // no overlapped I/O<br />
NULL); // null template<br />
Wenn dies nun ausgeführt wird, bekomme ich immer ein INVALID_HANDLE_VALUE zurück.<br />
Ich prüfe mit GetLastError ab, was für ein Fehler während des Aufrufs aufgetreten ist und bekomme folgende Meldung:<br />
&quot;Eine Datei kann nicht erstellt werden, wenn sie bereits vorhanden ist.&quot;</p>
<p>Zur Info: Über ein externes Tool, kann ich auf die RS232-Schnittstelle zugreifen. Nach Benutzung des Programms beende ich die Verbindung.</p>
<p>Könnt ihr mir helfen?</p>
<p>Viele Grüße<br />
EntonH</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/222782/rs232-ansteuern-fehler</link><generator>RSS for Node</generator><lastBuildDate>Sun, 12 Apr 2026 07:11:19 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/222782.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 17 Sep 2008 10:53:15 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to RS232 ansteuern - Fehler on Wed, 17 Sep 2008 10:53:15 GMT]]></title><description><![CDATA[<p>Hallo ihr,</p>
<p>ich habe mich zwar mit der Suche bemüht, wurde jedoch leider nicht fündig.</p>
<p>Ich möchte via createFile ein Handle auf meine Com-Schnittstelle bekommen:<br />
this-&gt;comhandle = CreateFile(name,<br />
GENERIC_READ | GENERIC_WRITE,<br />
0, // exclusive access<br />
NULL, // no security<br />
OPEN_EXISTING,<br />
0, // no overlapped I/O<br />
NULL); // null template<br />
Wenn dies nun ausgeführt wird, bekomme ich immer ein INVALID_HANDLE_VALUE zurück.<br />
Ich prüfe mit GetLastError ab, was für ein Fehler während des Aufrufs aufgetreten ist und bekomme folgende Meldung:<br />
&quot;Eine Datei kann nicht erstellt werden, wenn sie bereits vorhanden ist.&quot;</p>
<p>Zur Info: Über ein externes Tool, kann ich auf die RS232-Schnittstelle zugreifen. Nach Benutzung des Programms beende ich die Verbindung.</p>
<p>Könnt ihr mir helfen?</p>
<p>Viele Grüße<br />
EntonH</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1583414</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1583414</guid><dc:creator><![CDATA[EntonH]]></dc:creator><pubDate>Wed, 17 Sep 2008 10:53:15 GMT</pubDate></item><item><title><![CDATA[Reply to RS232 ansteuern - Fehler on Thu, 18 Sep 2008 14:48:46 GMT]]></title><description><![CDATA[<p>Benutze zu diesem Zweck besser einfertige Klasse. Da gibts z.B. was auf code-project. Nutze einfach mal die Forensuche, da wirst du schnell fündig. Und vielleicht hat sich dein Problem dann auch von selbst erledigt...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1584378</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1584378</guid><dc:creator><![CDATA[_matze]]></dc:creator><pubDate>Thu, 18 Sep 2008 14:48:46 GMT</pubDate></item><item><title><![CDATA[Reply to RS232 ansteuern - Fehler on Fri, 19 Sep 2008 06:10:46 GMT]]></title><description><![CDATA[<p><a href="http://www.codeproject.com/KB/system/serial.aspx" rel="nofollow">http://www.codeproject.com/KB/system/serial.aspx</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1584624</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1584624</guid><dc:creator><![CDATA[simon.gysi]]></dc:creator><pubDate>Fri, 19 Sep 2008 06:10:46 GMT</pubDate></item><item><title><![CDATA[Reply to RS232 ansteuern - Fehler on Fri, 19 Sep 2008 16:26:12 GMT]]></title><description><![CDATA[<p>Was übergibst du als name? Und bist du sicher dass zu dem Zeitpunkt nicht schon irgendwer den COM-Port offen hat (evtl. auch dein eigenes Programm)?</p>
<p>Die Flags die du übergibst sind nämlich richtig.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1584994</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1584994</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Fri, 19 Sep 2008 16:26:12 GMT</pubDate></item><item><title><![CDATA[Reply to RS232 ansteuern - Fehler on Mon, 29 Sep 2008 08:57:28 GMT]]></title><description><![CDATA[<p>Danke für eure Antworten <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
<p>Als Port übergebe ich &quot;\\\.\\COM3&quot;.<br />
Das sollte doch eigentlich auch richtig sein, oder?</p>
<p>Von meinem Programm kann der Port eigentlich nicht geöffnet sein, da dies die erste Stelle ist, an der auf den Comport zugegriffen werden soll.</p>
<p>Kann man irgendwie herausfinden, welche Programme den Comport benutzen oder bleibt mir nichts Anderes, als zu schauen und Programme ggf. abzuschießen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1590102</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1590102</guid><dc:creator><![CDATA[EntonH]]></dc:creator><pubDate>Mon, 29 Sep 2008 08:57:28 GMT</pubDate></item><item><title><![CDATA[Reply to RS232 ansteuern - Fehler on Mon, 29 Sep 2008 09:11:28 GMT]]></title><description><![CDATA[<blockquote>
<p>Kann man irgendwie herausfinden, welche Programme den Comport benutzen</p>
</blockquote>
<p>Ja, benutze den PortMon von Sysinternals.<br />
<a href="http://technet.microsoft.com/en-us/sysinternals/bb896644.aspx" rel="nofollow">http://technet.microsoft.com/en-us/sysinternals/bb896644.aspx</a><br />
Simon</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1590109</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1590109</guid><dc:creator><![CDATA[theta]]></dc:creator><pubDate>Mon, 29 Sep 2008 09:11:28 GMT</pubDate></item><item><title><![CDATA[Reply to RS232 ansteuern - Fehler on Mon, 29 Sep 2008 11:02:03 GMT]]></title><description><![CDATA[<p>Hi EntonH,<br />
sowohl die Parameter der Funktion <em>CreateFile()</em> als auch der Name &quot;\\\.\\COM3&quot; sind in Ordnung.</p>
<p>EntonH schrieb:</p>
<blockquote>
<p>Ich prüfe mit GetLastError ab, was für ein Fehler während des Aufrufs aufgetreten ist und bekomme folgende Meldung:<br />
&quot;Eine Datei kann nicht erstellt werden, wenn sie bereits vorhanden ist.&quot;</p>
</blockquote>
<p>Kannst Du uns bitte verraten, welche Fehlernummer (der numerische Wert) das ist?<br />
Eine mögliche Verwechslung von hexadezimal und dezimal ist ausgeschlossen?</p>
<p>Wenn Du INVALID_HANDLE_VALUE zurückbekommst, dann bekommst Du per <em>GetLastError()</em> eigentlich nur die folgenden möglichen Werte (zumindestens nach meiner Praxiserfahrung):<br />
- 5=ERROR_ACCESS_DENIED Port ist bereits belegt.<br />
- 32=ERROR_SHARING_VIOLATION Port ist bereits belegt.<br />
- 1119=ERROR_IRQ_BUSY Es konnte ein Gerät nicht geöffnet werden, das einen IRQ zusammen mit anderen Geräten verwendet. Mindestens ein weiteres Gerät, das diesen IRQ verwendet, war bereits geöffnet.<br />
- 31=ERROR_GEN_FAILURE kommt bei einem deaktivierten IrDA-Port vor.<br />
- 121=ERROR_SEM_TIMEOUT The semaphore timeout period has expired.<br />
- 1118=ERROR_SERIAL_NO_DEVICE Es konnte kein serielles Gerät erfolgreich initialisiert werden.</p>
<p>Martin</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1590164</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1590164</guid><dc:creator><![CDATA[Mmacher]]></dc:creator><pubDate>Mon, 29 Sep 2008 11:02:03 GMT</pubDate></item><item><title><![CDATA[Reply to RS232 ansteuern - Fehler on Mon, 29 Sep 2008 11:16:33 GMT]]></title><description><![CDATA[<p>[Nachtrag:]</p>
<p>EntonH schrieb:</p>
<blockquote>
<p>Zur Info: Über ein externes Tool, kann ich auf die RS232-Schnittstelle zugreifen. Nach Benutzung des Programms beende ich die Verbindung.</p>
</blockquote>
<p>Erscheint Deine Fehlermeldung nur nach dem Start dieses externen Tools? Oder erscheint sie jedesmal?</p>
<p>Benutzt Du eine &quot;handelsübliche&quot; serielle Schnittstelle?<br />
Oder evtl. einen USB- bzw. Ethernet-Konverter?</p>
<p>Martin</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1590175</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1590175</guid><dc:creator><![CDATA[Mmacher]]></dc:creator><pubDate>Mon, 29 Sep 2008 11:16:33 GMT</pubDate></item><item><title><![CDATA[Reply to RS232 ansteuern - Fehler on Mon, 29 Sep 2008 13:38:20 GMT]]></title><description><![CDATA[<p>Hallo!</p>
<p>Ich benutze einen USB-Konverter.</p>
<p>Und folgender Code liefert mir die in meinem 1. Posting geschilderte Meldung (&quot;Eine Datei kann nicht erstellt werden, wenn sie bereits vorhanden ist.&quot; ):</p>
<p>LPVOID lpMsgBuf;<br />
FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS, NULL, GetLastError(), MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPTSTR) &amp;lpMsgBuf, 0, NULL);</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1590265</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1590265</guid><dc:creator><![CDATA[EntonH]]></dc:creator><pubDate>Mon, 29 Sep 2008 13:38:20 GMT</pubDate></item><item><title><![CDATA[Reply to RS232 ansteuern - Fehler on Mon, 29 Sep 2008 15:52:57 GMT]]></title><description><![CDATA[<p>Welchen USB-Konverter verwendest Du? Solchen mit dem IC von FTDIchip? Oder den mit dem IC von Prolific?</p>
<p>Hat Dein PC einen anderen COM-Port zum Testen? Wenn ja, funktioniert dort der Zugriff?</p>
<p>EntonH schrieb:</p>
<blockquote>
<p>LPVOID lpMsgBuf;<br />
FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS, NULL, GetLastError(), MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPTSTR) &amp;lpMsgBuf, 0, NULL);</p>
</blockquote>
<p>Offensichtlich handelt es sich um den Windows Fehlercode Nr. 183.</p>
<p>Zitat aus <a href="http://entwickler-forum.de/showthread.php?t=13477" rel="nofollow">http://entwickler-forum.de/showthread.php?t=13477</a> :</p>
<blockquote>
<p>Hallo,</p>
<p>ich hab das selbe Problem gehabt.<br />
Bei mir lags daran, daß das ioresult<br />
bei einer Vorgängeranweisung nicht<br />
abgefragt wurde. Dadurch wurde der Fehler<br />
('Verzeichnis bereits angelegt') an<br />
die nächste Anweisung weitergeschleift.</p>
<p>Gruß Michae</p>
</blockquote>
<p>Trifft das vielleicht auch auf Deine Software zu? (egal ob Datei- oder Verzeichnis-Operationen, Abfrage auf Vorhandensein usw.)<br />
Ich würde verbundenen Augen behaupten, Diese Vorgänger-Aktion ist die wahre Ursache und nicht die serielle Schnittstelle selbst.<br />
Um diese Annahme zu bestätigen, rufe vor <em>CreateFile()</em> die Funktion auf:</p>
<pre><code class="language-cpp">SetLastError( 0 );
</code></pre>
<p>Bekommst Du da ein anderes Ergebnis?</p>
<p>Martin</p>
<p>P.S.: Benutze bitte die Code-Tags, das erhöht die Lesbarkeit.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1590363</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1590363</guid><dc:creator><![CDATA[Mmacher]]></dc:creator><pubDate>Mon, 29 Sep 2008 15:52:57 GMT</pubDate></item></channel></rss>