Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Di Mai 14, 2024 14:09

Foren-Übersicht » Programmierung » OpenGL
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 6 Beiträge ] 
Autor Nachricht
BeitragVerfasst: Do Apr 11, 2013 17:41 
Offline
DGL Member

Registriert: Sa Apr 14, 2012 14:28
Beiträge: 52
Programmiersprache: c++
Lösung steht in Beitrag 4!


Hallo,

ich versuche grad ein OpenGL-Fenster in meine Win-Forms-Anwendung rein zu kriegen. Ich arbeite mit VS2010 und C++.

Ich bekomme immer folgenden Fehler:

Zitat:
1>OpenGLForm.obj : error LNK2020: Nicht aufgelöstes Token (0A00000B) __imp____wglewCreateContextAttribsARB.
1>OpenGLForm.obj : error LNK2001: Nicht aufgelöstes externes Symbol "__imp___wglewCreateContextAttribsARB".


wenn ich diesen Teil Code zuschalte:

Code:
  1. if (wglewIsSupported("WGL_ARB_create_context") == 1) { // If the OpenGL 3.x context creation extension is available
  2.         hrc = wglCreateContextAttribsARB(hdc, NULL, attributes); // Create and OpenGL 3.x context based on the given attributes
  3.         wglMakeCurrent(NULL, NULL); // Remove the temporary context from being active
  4.         wglDeleteContext(Temp_hrc); // Delete the temporary OpenGL 2.1 context
  5.         wglMakeCurrent(hdc, hrc); // Make our OpenGL 3.0 context current
  6.     }
  7.     else
  8.     {
  9.         hrc = Temp_hrc; // If we didn't have support for OpenGL 3.x and up, use the OpenGL 2.1 context
  10.     }


Ich habe folgende includes:

Code:
  1.  
  2. # include <windows.h>
  3. # include <gl/glew.h>
  4. # include <gl/wglew.h>
  5. # include <gl/gl.h>
  6. # include <gl/glext.h>
  7. # include <gl/wglext.h>
  8.  


Über die Eigenschaften habe ich folgende libs mit eingebunden:

Zitat:
gdi32.lib
glew32.lib
glu32.lib
opengl32.lib
user32.lib


Der größte Teil des Codes stammt aus einem Swiftless Tutorial. Ich dachte erst, dass ich evtl ein paar Dateien nicht mehr auf dem neusten Stand habe, allerdings läuft das Tutorial Programm einwandfrei. Hat jemand ne Idee woran es liegen könnte?

Danke schonmal im Voraus!


Zuletzt geändert von Der Troll am Fr Apr 12, 2013 12:24, insgesamt 2-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Problem mit OpenGL 3 Context
BeitragVerfasst: Do Apr 11, 2013 18:18 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Nov 08, 2010 18:41
Beiträge: 769
Programmiersprache: Gestern
hast du auch die richtige glew32.lib? wenn das andere Projekt geht ist höchstwahrscheinlich build target oder so falsch.

_________________
Meine Homepage


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Problem mit OpenGL 3 Context
BeitragVerfasst: Do Apr 11, 2013 18:30 
Offline
DGL Member

Registriert: Sa Apr 14, 2012 14:28
Beiträge: 52
Programmiersprache: c++
Ich habe die neuste Version, also für 4.3. Wie gesagt, dass Beispielprogramm läuft ja.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Problem mit OpenGL 3 Context
BeitragVerfasst: Fr Apr 12, 2013 01:42 
Offline
DGL Member

Registriert: Sa Apr 14, 2012 14:28
Beiträge: 52
Programmiersprache: c++
So, ich habe den bösen Fehler gefunden:

Ich mußte im Eigenschaftsmanager unter C++ -> Allgemein -> Common Language Runtime-Unterstützung von ursprünglich " Reine MSIL Common Language Runtime-Unterstützung (/clr:pure)" auf "Common Language Runtime-Unterstützung (/clr)" umschalten. Ich habe zwar keinerlei Ahnung was da jetzt passiert ist, aber ich werde das mir mal zu Gemüte führen, immerhin hat mich dieser Mist nen ganzen Tag gekostet -.- Jetzt will ich auch wissen warum.

MfG Der Troll

PS: Ich werde mal ne treffendere Bezeichnung für den Thread suchen und nen "gelöst"-Flag hinter schmeißen, falls jemand auch mal das Problem haben sollte


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Di Apr 16, 2013 07:46 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Nov 08, 2010 18:41
Beiträge: 769
Programmiersprache: Gestern
Zitat:
Rein (/clr:pure)

Reine Assemblys (kompiliert mit /clr:pure) können sowohl systemeigene als auch verwaltete Datentypen enthalten, aber nur verwaltete Funktionen. Ebenso wie bei gemischten Assemblys ist Interop mit systemeigenen DLLs durch P/Invoke (siehe Verwenden von explizitem PInvoke in C++ (DllImport-Attribut)) auch bei reinen Assemblys möglich, allerdings sind die C++ Interop-Features nicht verfügbar. Darüber hinaus können reine Assemblys keine Funktionen exportieren, die von systemeigenen Funktionen aufrufbar sind, weil die Einstiegspunkte in einer reinen Assembly die __clrcall-Aufrufkonvention verwenden.


http://msdn.microsoft.com/de-de/library ... 44whh.aspx

ich hoffe das beantwortet die noch offenen Fragen.

_________________
Meine Homepage


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Mi Apr 17, 2013 00:22 
Offline
DGL Member

Registriert: Sa Apr 14, 2012 14:28
Beiträge: 52
Programmiersprache: c++
halbwegs... richtig durchgeblickt habe ich aufgrund mangelnden Fachwissens noch nicht. :mrgreen: Trotzdem danke.

MfG Der Troll


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 6 Beiträge ] 
Foren-Übersicht » Programmierung » OpenGL


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 7 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.027s | 17 Queries | GZIP : On ]