<?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[Aus externe Dll - Globale Variables &#x2F; ReceiveData Retrun]]></title><description><![CDATA[<p>Hallo,</p>
<p>Kurz Info:</p>
<p>Ich soll ein fremde dll ohne .h Datei (fehlt aber pdf vorhanden mit funktionbeschreibung) in mein c++ proramm implementieren die mit ein Gerät über RS232 komuniziert. Bis jetzt habe ich eine classe geschrieben die mir die Standard funktionen implementiert (mit __stdcall / GetProcAddress). Soweit so gut z.b wie DllComOpen, DllComClose, DllSendAsciiString usw funktioniert.</p>
<p><strong>Problem DllReceiveData: <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="😕"
    /> ich weiss nicht wie an den Daten ran kommen soll</strong></p>
<p>hier die funktion wie in der PDF beschrieben ist.</p>
<pre><code class="language-csharp">DllReceiveData
[Summary] Acquisition of data received

[Function] BOOL DllReceiveData( BYTE* pbyBuffer, DWORD* pdwLength )

[Argument] BYTE* pbyBuffer; Data received
           DWORD* pdwLength; No. of data (excepting NUL)

[Return value] TRUE: Normal completion, FALSE: Irregular completion

[Description] Obtains data of a receiving buffer. NUL is added to the end of data (for both ASCII and binary). However, pdwLength returns the value without NUL.When the return value is FALSE, verify the content of irregularities using the function of DllGetFatalError.DllGetWarningError.
Perform processing again after resetting an irregular state using the function of DllComReset.
</code></pre>
<p>Bin über jeder hilfe dankbar. IDE / Devcpp</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/208388/aus-externe-dll-globale-variables-receivedata-retrun</link><generator>RSS for Node</generator><lastBuildDate>Sat, 25 Apr 2026 01:15:33 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/208388.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 18 Mar 2008 03:21:06 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Aus externe Dll - Globale Variables &#x2F; ReceiveData Retrun on Tue, 18 Mar 2008 03:21:06 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>Kurz Info:</p>
<p>Ich soll ein fremde dll ohne .h Datei (fehlt aber pdf vorhanden mit funktionbeschreibung) in mein c++ proramm implementieren die mit ein Gerät über RS232 komuniziert. Bis jetzt habe ich eine classe geschrieben die mir die Standard funktionen implementiert (mit __stdcall / GetProcAddress). Soweit so gut z.b wie DllComOpen, DllComClose, DllSendAsciiString usw funktioniert.</p>
<p><strong>Problem DllReceiveData: <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="😕"
    /> ich weiss nicht wie an den Daten ran kommen soll</strong></p>
<p>hier die funktion wie in der PDF beschrieben ist.</p>
<pre><code class="language-csharp">DllReceiveData
[Summary] Acquisition of data received

[Function] BOOL DllReceiveData( BYTE* pbyBuffer, DWORD* pdwLength )

[Argument] BYTE* pbyBuffer; Data received
           DWORD* pdwLength; No. of data (excepting NUL)

[Return value] TRUE: Normal completion, FALSE: Irregular completion

[Description] Obtains data of a receiving buffer. NUL is added to the end of data (for both ASCII and binary). However, pdwLength returns the value without NUL.When the return value is FALSE, verify the content of irregularities using the function of DllGetFatalError.DllGetWarningError.
Perform processing again after resetting an irregular state using the function of DllComReset.
</code></pre>
<p>Bin über jeder hilfe dankbar. IDE / Devcpp</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1476264</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1476264</guid><dc:creator><![CDATA[evirus]]></dc:creator><pubDate>Tue, 18 Mar 2008 03:21:06 GMT</pubDate></item><item><title><![CDATA[Reply to Aus externe Dll - Globale Variables &#x2F; ReceiveData Retrun on Tue, 18 Mar 2008 08:11:51 GMT]]></title><description><![CDATA[<p>Dieser Thread wurde von Moderator/in <a href="http://www.c-plusplus.net/forum/profile-var-mode-is-viewprofile-and-u-is-10455.html" rel="nofollow">evilissimo</a> aus dem Forum <a href="http://www.c-plusplus.net/forum/viewforum-var-f-is-15.html" rel="nofollow">C++</a> in das Forum <a href="http://www.c-plusplus.net/forum/viewforum-var-f-is-4.html" rel="nofollow">WinAPI</a> verschoben.</p>
<p>Im Zweifelsfall bitte auch folgende Hinweise beachten:<br />
<a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-39405.html" rel="nofollow">C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?</a></p>
<p><em>Dieses Posting wurde automatisch erzeugt.</em></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1476311</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1476311</guid><dc:creator><![CDATA[C++ Forumbot]]></dc:creator><pubDate>Tue, 18 Mar 2008 08:11:51 GMT</pubDate></item><item><title><![CDATA[Reply to Aus externe Dll - Globale Variables &#x2F; ReceiveData Retrun on Tue, 18 Mar 2008 08:24:20 GMT]]></title><description><![CDATA[<p>Und was ist jetzt Dein Problem? Ist doch alles beschrieben, oder?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1476318</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1476318</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Tue, 18 Mar 2008 08:24:20 GMT</pubDate></item><item><title><![CDATA[Reply to Aus externe Dll - Globale Variables &#x2F; ReceiveData Retrun on Tue, 18 Mar 2008 09:36:42 GMT]]></title><description><![CDATA[<p>Ganz einfach ich weiss nicht wie ich an die Date kommen soll.</p>
<pre><code>BOOL DllReceiveData( BYTE* pbyBuffer, DWORD* pdwLength )
</code></pre>
<p>wie geht man sowas an? DllSendAsciiString war ja einfach.<br />
Aber keine Ahnung wie ich das aufbauen soll damit ich die Daten bekomme. Ich verstehe nicht wie ich da die länge angeben soll weiss ja nicht was vorher von dem gerät ja gesendet wird. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /> und BYTE als referenz angeben oder wie bekomme ich die Daten? <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>
<p>Kann mir denn da keinder da weiter helfen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1476365</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1476365</guid><dc:creator><![CDATA[evirus]]></dc:creator><pubDate>Tue, 18 Mar 2008 09:36:42 GMT</pubDate></item><item><title><![CDATA[Reply to Aus externe Dll - Globale Variables &#x2F; ReceiveData Retrun on Tue, 18 Mar 2008 10:10:58 GMT]]></title><description><![CDATA[<p>Du reservierst sowohl für pbyBuffer als auch pdwLength Speicherplatz. Wieviel Platz für den Buffer benötigt wird, geht aus deinem Auszug nicht hervor.</p>
<pre><code class="language-cpp">BYTE myBuffer[MAXIMALE_LAENGE]; // die maximale Länge sagt dir das PDF
DWORD myBufferLength; // hier kommt die Anzahl der gelesenen Bytes rein

if (DllReceiveData(&amp;myBuffer, &amp;myBufferLength){
    do_something_with(&amp;myBuffer, &amp;myBufferLength); // in myBuffer sind jetzt die Daten, und zwar myBufferLength Bytes
} else {
    // hat nicht funktioniert
}
</code></pre>
<p>Bitte sehr.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1476391</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1476391</guid><dc:creator><![CDATA[mad_martin]]></dc:creator><pubDate>Tue, 18 Mar 2008 10:10:58 GMT</pubDate></item><item><title><![CDATA[Reply to Aus externe Dll - Globale Variables &#x2F; ReceiveData Retrun on Tue, 18 Mar 2008 10:15:46 GMT]]></title><description><![CDATA[<p>Danke schön.<br />
werde ich sofort ausprobieren. <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/1476399</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1476399</guid><dc:creator><![CDATA[evirus]]></dc:creator><pubDate>Tue, 18 Mar 2008 10:15:46 GMT</pubDate></item><item><title><![CDATA[Reply to Aus externe Dll - Globale Variables &#x2F; ReceiveData Retrun on Tue, 18 Mar 2008 10:50:07 GMT]]></title><description><![CDATA[<p>shit jetzt kommt Compiler fehler:</p>
<p>Code</p>
<pre><code>BYTE myBuffer[48]; // die maximale Länge sagt dir das PDF
     DWORD myBufferLength; // hier kommt die Anzahl der gelesenen Bytes rein

     if (DllReceiveData(&amp;myBuffer, &amp;myBufferLength)){
        do_something_with(&amp;myBuffer, &amp;myBufferLength); // in myBuffer sind jetzt die Daten, und zwar myBufferLength Bytes
        } else {
        cout &lt;&lt; &quot;hat nicht funktioniert&quot; &lt;&lt; endl;
       }
</code></pre>
<p>Compiler:</p>
<pre><code>97 I:\Dev-Cpp\TestCom4\SXSerial.cpp cannot convert `BYTE (*)[48]' to `BYTE*' in argument passing
</code></pre>
<p>THX</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1476431</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1476431</guid><dc:creator><![CDATA[evirus]]></dc:creator><pubDate>Tue, 18 Mar 2008 10:50:07 GMT</pubDate></item><item><title><![CDATA[Reply to Aus externe Dll - Globale Variables &#x2F; ReceiveData Retrun on Tue, 18 Mar 2008 11:02:25 GMT]]></title><description><![CDATA[<p>Dann probiers mit</p>
<pre><code class="language-cpp">BYTE* myBuffer = new BYTE[HIER_DIE_GROESSE_EINTRAGEN];

/* dein Code */

delete[] myBuffer; // nicht vergessen
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1476447</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1476447</guid><dc:creator><![CDATA[mad_martin]]></dc:creator><pubDate>Tue, 18 Mar 2008 11:02:25 GMT</pubDate></item><item><title><![CDATA[Reply to Aus externe Dll - Globale Variables &#x2F; ReceiveData Retrun on Tue, 18 Mar 2008 11:14:15 GMT]]></title><description><![CDATA[<p>Mach das &quot;&amp;&quot;-Zeichen vor dem &quot;myBuffer&quot; weg...</p>
<pre><code class="language-cpp">if (DllReceiveData(myBuffer, &amp;myBufferLength){ 
    do_something_with(&amp;myBuffer, &amp;myBufferLength); // in myBuffer sind jetzt die Daten, und zwar myBufferLength Bytes 
} else { 
    // hat nicht funktioniert 
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1476459</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1476459</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Tue, 18 Mar 2008 11:14:15 GMT</pubDate></item><item><title><![CDATA[Reply to Aus externe Dll - Globale Variables &#x2F; ReceiveData Retrun on Tue, 18 Mar 2008 15:38:51 GMT]]></title><description><![CDATA[<p>Ja so muß das sein Jochen. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f576.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--sunglasses"
      title=":sunglasses:"
      alt="🕶"
    /></p>
<p>So funktioniert einwandfrei:</p>
<pre><code>if (DllReceiveData(myBuffer, &amp;myBufferLength)){
        parseData(myBuffer, &amp;myBufferLength); 
        }
</code></pre>
<p>Vielen Dank an euch!!!! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
<p>Aber jetzt hätte ich gerne noch ne kleine frage und zwar:<br />
In der pdf-dll steht<br />
<strong>&quot;DLL global variables&quot;</strong></p>
<p>Beispiel:</p>
<pre><code>csComInfo
         [Summary] System information
         [Declaration] COMINFO csComInfo;
         [Description] Retains necessary information when the port opens.
         [Structure] typedef struct{
         BOOL fConnect; Port connection completion flag
              (FALSE: Incomplete, TRUE: Completed)
         HWND hWnd; Owner window handle
         HANDLE hCom; Communication handle
         UINT uiTimerNo; Timer No.
         UINT uiTimerWait; Timer interrupt interval
         BOOL fTimerSw; Timer operating status (FALSE: OFF, TRUE: ON)
         DWORD dwPort; Port (1: COM1, 2: COM2)
         BYTE byDataBit; Data bit (7: 7 bits, 8: 8 bits)
         BYTE byStopBit; Stop bit (0: 1 bit, 1: 1.5 bits, 2: 2 bits)
         BYTE byParity; Parity (0: None, 1: Odd number, 2: Even number)
         DWORD dwBaudRate; Baud rate (300 - 38400)
         OVERLAPPED osWrite; API information
         OVERLAPPED osRead; API information
         HANDLE hFncThread; API information
         DWORD dwThreadID; API information
} COMINFO, NEAR *NPCOMINFO;
</code></pre>
<p>kann man das auch abfragen???? z.B Referenz oder Pointer da drauf???</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1476687</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1476687</guid><dc:creator><![CDATA[evirus]]></dc:creator><pubDate>Tue, 18 Mar 2008 15:38:51 GMT</pubDate></item><item><title><![CDATA[Reply to Aus externe Dll - Globale Variables &#x2F; ReceiveData Retrun on Tue, 18 Mar 2008 16:54:59 GMT]]></title><description><![CDATA[<p>Les doch die Doku ob es da eine Funktion gibt die Dir ein &quot;COMINFO&quot; zurückliefert!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1476757</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1476757</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Tue, 18 Mar 2008 16:54:59 GMT</pubDate></item><item><title><![CDATA[Reply to Aus externe Dll - Globale Variables &#x2F; ReceiveData Retrun on Tue, 18 Mar 2008 20:43:17 GMT]]></title><description><![CDATA[<p>Habe ich schon aber leider hat die dll so eine funktion nicht.<br />
Da steht nur</p>
<p>2. DLL global variables</p>
<pre><code>Variable Table

csComInfo    System information
csFatalErr   Fatal error information 
csWarningErr Warning error information

usw..
</code></pre>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1476891</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1476891</guid><dc:creator><![CDATA[evirus]]></dc:creator><pubDate>Tue, 18 Mar 2008 20:43:17 GMT</pubDate></item><item><title><![CDATA[Reply to Aus externe Dll - Globale Variables &#x2F; ReceiveData Retrun on Wed, 19 Mar 2008 07:14:43 GMT]]></title><description><![CDATA[<p>Das müsste auch mit GetProcAddress gehen...<br />
Schau mal mit <a href="http://www.dependencywalker.com" rel="nofollow">www.dependencywalker.com</a> nach, wie die Namen in der DLL wirklich heissen...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1477021</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1477021</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Wed, 19 Mar 2008 07:14:43 GMT</pubDate></item></channel></rss>