<?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[VC++ Fehler beim linken]]></title><description><![CDATA[<p>Ich erhalte beim linken der OBJ-Dateien folgenden Fehler:</p>
<blockquote>
<p>-------------------Konfiguration: Listing1 - Win32 Debug--------------------<br />
Linker-Vorgang läuft...<br />
Listing1.obj : error LNK2001: Nichtaufgeloestes externes Symbol _Direct3DCreate9@4<br />
Debug/Listing1.exe : fatal error LNK1120: 1 unaufgeloeste externe Verweise<br />
Fehler beim Ausführen von link.exe.</p>
<p>Listing1.exe - 2 Fehler, 0 Warnung(en)</p>
</blockquote>
<p>Ich habe die Pfade zum DirectX SDK hinzugefügt, woran könnte dies liegen?</p>
<p>Hier mal mein Listing:</p>
<pre><code class="language-cpp">#include &lt;windows.h&gt;
#include &lt;stdio.h&gt;
#include &lt;d3d9.h&gt;

int g_iNumAdapters; // Anzahl der Adapter
D3DADAPTER_IDENTIFIER9 * g_pAdapters; // Adapterliste
PDIRECT3D9 g_pD3D = NULL; // IDirect3d9-Schnittstelle

int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, char * pcCmdLine, int iShowCmd) {

	char acAdapterInfo[1024];

	// Schnittstelle für Direct3D erzeugen
	if ((g_pD3D = Direct3DCreate9 (D3D_SDK_VERSION)) == NULL) {
		// Fehler
		MessageBox (NULL, &quot;Fehler beim Erzeugen der Direct3D-Schnittstelle!&quot;, &quot;Fehler&quot;, MB_OK | MB_ICONEXCLAMATION);
		return 1;
	}

	// Anzahl der Adapter ermitteln
	g_iNumAdapters = g_pD3D-&gt;GetAdapterCount ();

	// Speicher reservieren und Informationen über jeden Adapter sammeln
	g_pAdapters = new D3DADAPTER_IDENTIFIER9[g_iNumAdapters];

	for (int i = 0; i &lt; g_iNumAdapters; i++) {
		if (FAILED (g_pD3D-&gt;GetAdapterIdentifier(i, 0, &amp;g_pAdapters[i]))) {
			// Fehler
			MessageBox (NULL, &quot;Adapterinformationen konnten nicht abgefragt werden!&quot;, &quot;Fehler&quot;, MB_OK | MB_ICONEXCLAMATION);
			// Aufräumen
			g_pD3D-&gt;Release ();
			delete[] g_pAdapters;
			return 1;
		}

		// Adapterinformationen anzeigen
		sprintf (acAdapterInfo, &quot;Adapter-ID: %d\n Name: %s\n Treiber: %s\n Treiberversion: %d&quot;,i, g_pAdapters[i].Description,
				 g_pAdapters[i].Driver, g_pAdapters[i].DriverVersion);

		MessageBox (NULL, acAdapterInfo, &quot;Adapter gefunden&quot;, MB_OK | MB_ICONEXCLAMATION);

	}

	// Aufräumen
	g_pD3D-&gt;Release ();
	delete[] g_pAdapters;

	return 0;

}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/59001/vc-fehler-beim-linken</link><generator>RSS for Node</generator><lastBuildDate>Tue, 02 Jun 2026 22:10:56 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/59001.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 17 Dec 2003 22:51:46 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to VC++ Fehler beim linken on Wed, 17 Dec 2003 22:51:46 GMT]]></title><description><![CDATA[<p>Ich erhalte beim linken der OBJ-Dateien folgenden Fehler:</p>
<blockquote>
<p>-------------------Konfiguration: Listing1 - Win32 Debug--------------------<br />
Linker-Vorgang läuft...<br />
Listing1.obj : error LNK2001: Nichtaufgeloestes externes Symbol _Direct3DCreate9@4<br />
Debug/Listing1.exe : fatal error LNK1120: 1 unaufgeloeste externe Verweise<br />
Fehler beim Ausführen von link.exe.</p>
<p>Listing1.exe - 2 Fehler, 0 Warnung(en)</p>
</blockquote>
<p>Ich habe die Pfade zum DirectX SDK hinzugefügt, woran könnte dies liegen?</p>
<p>Hier mal mein Listing:</p>
<pre><code class="language-cpp">#include &lt;windows.h&gt;
#include &lt;stdio.h&gt;
#include &lt;d3d9.h&gt;

int g_iNumAdapters; // Anzahl der Adapter
D3DADAPTER_IDENTIFIER9 * g_pAdapters; // Adapterliste
PDIRECT3D9 g_pD3D = NULL; // IDirect3d9-Schnittstelle

int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, char * pcCmdLine, int iShowCmd) {

	char acAdapterInfo[1024];

	// Schnittstelle für Direct3D erzeugen
	if ((g_pD3D = Direct3DCreate9 (D3D_SDK_VERSION)) == NULL) {
		// Fehler
		MessageBox (NULL, &quot;Fehler beim Erzeugen der Direct3D-Schnittstelle!&quot;, &quot;Fehler&quot;, MB_OK | MB_ICONEXCLAMATION);
		return 1;
	}

	// Anzahl der Adapter ermitteln
	g_iNumAdapters = g_pD3D-&gt;GetAdapterCount ();

	// Speicher reservieren und Informationen über jeden Adapter sammeln
	g_pAdapters = new D3DADAPTER_IDENTIFIER9[g_iNumAdapters];

	for (int i = 0; i &lt; g_iNumAdapters; i++) {
		if (FAILED (g_pD3D-&gt;GetAdapterIdentifier(i, 0, &amp;g_pAdapters[i]))) {
			// Fehler
			MessageBox (NULL, &quot;Adapterinformationen konnten nicht abgefragt werden!&quot;, &quot;Fehler&quot;, MB_OK | MB_ICONEXCLAMATION);
			// Aufräumen
			g_pD3D-&gt;Release ();
			delete[] g_pAdapters;
			return 1;
		}

		// Adapterinformationen anzeigen
		sprintf (acAdapterInfo, &quot;Adapter-ID: %d\n Name: %s\n Treiber: %s\n Treiberversion: %d&quot;,i, g_pAdapters[i].Description,
				 g_pAdapters[i].Driver, g_pAdapters[i].DriverVersion);

		MessageBox (NULL, acAdapterInfo, &quot;Adapter gefunden&quot;, MB_OK | MB_ICONEXCLAMATION);

	}

	// Aufräumen
	g_pD3D-&gt;Release ();
	delete[] g_pAdapters;

	return 0;

}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/418673</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/418673</guid><dc:creator><![CDATA[SirLant]]></dc:creator><pubDate>Wed, 17 Dec 2003 22:51:46 GMT</pubDate></item><item><title><![CDATA[Reply to VC++ Fehler beim linken on Wed, 17 Dec 2003 23:00:03 GMT]]></title><description><![CDATA[<p>Hi,<br />
kann es sein, dass du dieses D3DCREATE9 etc. irgendwo in nem Header deklariert hast und nachher nicht aufgelöst hast, also geschrieben, was darin passieren soll????????</p>
]]></description><link>https://www.c-plusplus.net/forum/post/418676</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/418676</guid><dc:creator><![CDATA[CLoop]]></dc:creator><pubDate>Wed, 17 Dec 2003 23:00:03 GMT</pubDate></item></channel></rss>