<?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[Zugriff aug globle variablen]]></title><description><![CDATA[<p>Moin<br />
Ich habe ne MFC erweiterungs DLL geschrieben. Dort gibts ja diese Funktion DllMain. Direkt unterhalb hab ich eine Funktion geschrieben</p>
<pre><code class="language-cpp">//DLL Klasse
//DllMain(...) {...}
extern PGconn* conn;
PGconn* conn;

extern &quot;C&quot; __declspec(dllexport) void SetDLLConn(PGconn* pConn)
{   
   conn = pConn;  
}
</code></pre>
<p>Wie kann ich jetzt auf die conn Variable von einer anderen hinzugefügten Klasse zugreifen? Ich hab ja keine *.h <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="😞"
    /><br />
thx&amp;cya</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/48023/zugriff-aug-globle-variablen</link><generator>RSS for Node</generator><lastBuildDate>Tue, 28 Apr 2026 03:49:54 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/48023.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 04 Sep 2003 12:32:57 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Zugriff aug globle variablen on Thu, 04 Sep 2003 12:32:57 GMT]]></title><description><![CDATA[<p>Moin<br />
Ich habe ne MFC erweiterungs DLL geschrieben. Dort gibts ja diese Funktion DllMain. Direkt unterhalb hab ich eine Funktion geschrieben</p>
<pre><code class="language-cpp">//DLL Klasse
//DllMain(...) {...}
extern PGconn* conn;
PGconn* conn;

extern &quot;C&quot; __declspec(dllexport) void SetDLLConn(PGconn* pConn)
{   
   conn = pConn;  
}
</code></pre>
<p>Wie kann ich jetzt auf die conn Variable von einer anderen hinzugefügten Klasse zugreifen? Ich hab ja keine *.h <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="😞"
    /><br />
thx&amp;cya</p>
]]></description><link>https://www.c-plusplus.net/forum/post/347169</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/347169</guid><dc:creator><![CDATA[sorron]]></dc:creator><pubDate>Thu, 04 Sep 2003 12:32:57 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff aug globle variablen on Thu, 04 Sep 2003 13:48:12 GMT]]></title><description><![CDATA[<p>Es ist nicht verboten eine Header-Datei anzulegen.<br />
Dort schreibst Du dann dein</p>
<pre><code>extern PGconn* conn;
</code></pre>
<p>rein.<br />
Oder hab ich da was übersehen ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/347229</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/347229</guid><dc:creator><![CDATA[DJohn]]></dc:creator><pubDate>Thu, 04 Sep 2003 13:48:12 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff aug globle variablen on Thu, 04 Sep 2003 18:50:30 GMT]]></title><description><![CDATA[<p>Hi!<br />
Das geht leider nicht. Dann schreibt er irgenwas von ner doppelten deklaration <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>mfg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/347474</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/347474</guid><dc:creator><![CDATA[mike84]]></dc:creator><pubDate>Thu, 04 Sep 2003 18:50:30 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff aug globle variablen on Fri, 05 Sep 2003 06:35:23 GMT]]></title><description><![CDATA[<p>Bei mir funktioniert es problemlos:<br />
Hier mal ein Beispiel:<br />
Header klasse.h</p>
<pre><code>#if !defined KLASSE_HEADER
#define KLASSE_HEADER

// Hier PGconn definieren oder Header mit PGconn-Definition einbinden:
// erstmal ganz simpel:
typedef int PGconn;
extern PGconn* conn;

// Deine Klasse
class Klasse{
	PGconn* getGlobalVar();
};

#endif //KLASSE_HEADER
</code></pre>
<p>Code klasse.cpp</p>
<pre><code>#include &quot;stdafx.h&quot;
#include &quot;klasse.h&quot;
//Beispielfunktion
PGconn* Klasse::getGlobalVar(){
	return conn;;
}
</code></pre>
<p>Die automatisch erstellte dll.cpp:</p>
<pre><code>#include &quot;stdafx.h&quot;
#include &lt;afxdllx.h&gt;

#include &quot;klasse.h&quot;

//...
// DllMain u.s.w.
//...

// Deine globale Variable:
PGconn* conn; 
extern &quot;C&quot; __declspec(dllexport) void SetDLLConn(PGconn* pConn) 
{    
   conn = pConn;   
}
</code></pre>
<p>mfg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/347653</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/347653</guid><dc:creator><![CDATA[DJohn]]></dc:creator><pubDate>Fri, 05 Sep 2003 06:35:23 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff aug globle variablen on Fri, 05 Sep 2003 08:06:49 GMT]]></title><description><![CDATA[<p>Hi!<br />
Vielen Danke für deine Antwort!!!!<br />
Leider bekomm ich nach wie vor folgenden Fehler, wenn ich</p>
<pre><code class="language-cpp">CConn* pCon; pCon-&gt;getGlobalVar();
</code></pre>
<p>in PartView.cpp schreibe<br />
WordEx.obj : error LNK2005: &quot;struct pg_conn * conn&quot; (?conn@@3PAUpg_conn@@A) bereits in PartView.obj definiert<br />
WordEx.obj : warning LNK4006: &quot;struct pg_conn * conn&quot; (?conn@@3PAUpg_conn@@A) bereits in PartView.obj definiert; zweite Definition wird ignoriert<br />
Bibliothek Debug/WordEx.lib und Objekt Debug/WordEx.exp wird erstellt<br />
PartView.obj : error LNK2001: Nichtaufgeloestes externes Symbol &quot;public: struct pg_conn * __thiscall CConn::getGlobalVar(void)&quot; (?getGlobalVar@CConn@@QAEPAUpg_conn@@XZ)</p>
<p>Weißt du zufällig was ich da falsch mache?<br />
Meine Conn.h</p>
<pre><code class="language-cpp">#include &quot;libpq-fe.h&quot;

PGconn* conn;
extern PGconn* conn; 

class CConn{ 
public:
    PGconn* getGlobalVar(); 
};
</code></pre>
<p>Meine Con.cpp</p>
<pre><code class="language-cpp">#include &quot;stdafx.h&quot; 
#include &quot;Conn.h&quot; 

PGconn* CConn::getGlobalVar(){ 
    return conn;
}
</code></pre>
<p>Implementierung:</p>
<pre><code class="language-cpp">extern &quot;C&quot; __declspec(dllexport) void SetDLLConn(PGconn* pConn)
{   
	conn = pConn;  
}
</code></pre>
<p>thx&amp;mfg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/347695</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/347695</guid><dc:creator><![CDATA[mike84]]></dc:creator><pubDate>Fri, 05 Sep 2003 08:06:49 GMT</pubDate></item><item><title><![CDATA[Reply to Zugriff aug globle variablen on Fri, 05 Sep 2003 08:57:56 GMT]]></title><description><![CDATA[<p>Hi!<br />
Es funktioniert jetzt. Danke für deine Hilfe <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="🙂"
    /><br />
Bin kurzzeitig auf dem Schlauch gestanden ;=)</p>
<p>cya</p>
]]></description><link>https://www.c-plusplus.net/forum/post/347723</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/347723</guid><dc:creator><![CDATA[mike84]]></dc:creator><pubDate>Fri, 05 Sep 2003 08:57:56 GMT</pubDate></item></channel></rss>