Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

$nooc

Alter Hase

Beiträge: 873

Wohnort: Österreich / Kärnten

Beruf: Schüler

  • Private Nachricht senden

11

07.08.2006, 17:18

ähm.. heißt das also dass ich funktionen verwenden kann, wie aus einer anderen .cpp datei?

also ich 'includiere' die .dll, und kann darin geschriebene funktionen verwenden?
Am Anfang der Weisheit steht die eigene Erkenntnis, dass man selbst nichts weiß! - Sokrates

Anonymous

unregistriert

12

07.08.2006, 17:25

Sowas in der Art, nicht genau so, aber sowas in der Art - sagen wir zu 10% stimmt das Prinzip. :roll:

Sheddex

unregistriert

13

07.08.2006, 17:36

So wie man auch z.B. D3D verwendet: Die Haupheader der Dll die alle anderen Header der Dll inkludiert inkludieren, die Lib einbinden und die Dll in den Ordner der Anwendung oder in den system32 legen.

Osram

Alter Hase

Beiträge: 889

Wohnort: Weissenthurm

Beruf: SW Entwickler

  • Private Nachricht senden

14

07.08.2006, 17:42

Zitat von »"$nooc"«

ähm.. heißt das also dass ich funktionen verwenden kann, wie aus einer anderen .cpp datei?

also ich 'includiere' die .dll, und kann darin geschriebene funktionen verwenden?


Ja. Der Unterschied ist dass "#include" zur Compilezeit ausgewertet wird und DLLs zur Laufzeit eingebunden werden.
"Games are algorithmic entertainment."

15

07.08.2006, 23:27

Hallo

Eine frage hätte ich noch. Wo Plaziere ich die funktionen und klasse die ich exportiere? Kann ich die in x-beliebeige .h und .cpp dateien schreiben und dann includiere ich die alle in die "haupt Datei.h" wo die DllMain drin steht oder müssen die exportierten funktionen und klassen an eine bestimmte stelle in der DllMain-funktion?

16

07.08.2006, 23:37

P.s.: Bei der gelegenheit könnte mir nochmal wer genau erklären was genau die DllMain tut?

Bin da nicht so sicher ob ich das richtig verstanden haben.

Sheddex

unregistriert

17

07.08.2006, 23:46

Die Hauptheader inkludiert alle anderen Header ( auch die von außerhalb), die anderen Header inkludieren nichts. Alle cpp Dateien inkludieren die Hauptheader.

18

09.08.2006, 00:05

Also erstmal danke für die Hilfe.

Es funktioniert auch alles soweit nur habe ich probleme Templates zu exportieren :-(

Der folgende Code steht in einer .h Datei

__declspec(dllexport) template <typename T> const T tpfMin(const T& x, const T& y);

und produziert diese Fehlermeldungen

c:\Entwicklung\C++\TPF_Engine\TPF_MATH.h(15): warning C4091: '__declspec(dllexport ) ': Ignoriert auf der linken Seite von 'int', wenn keine Variable deklariert wurde
c:\Entwicklung\C++\TPF_Engine\TPF_MATH.h(15): error C2143: Syntaxfehler: Es fehlt ';' vor ''template<''
c:\Entwicklung\C++\TPF_Engine\TPF_MATH.cpp(10): warning C4091: '__declspec(dllexport ) ': Ignoriert auf der linken Seite von 'int', wenn keine Variable deklariert wurde
c:\Entwicklung\C++\TPF_Engine\TPF_MATH.cpp(10): error C2143: Syntaxfehler: Es fehlt ';' vor ''template<''

Mein Ziel ist es dieses Template zu deklarieren und in einer .cpp Datei zu implementieren, so das ein Programm was diese Dll dann verwendet es benutzen kann.

Vielleicht könnte mir jemand kurz sagen wo da mein Denkfehler ist.

vielen Danke

MfG Abiet

Sheddex

unregistriert

19

09.08.2006, 00:11

Soviel ich weiß ist es unmöglich Templates in Dlls zu verwenden, da der Typ er letztendlich verwendet wird ja vorm Kompilieren zugewiesen wird und eine Dll ja bereits fertig ist... oder so ;)

20

09.08.2006, 10:42

Ok vielen dank.

Dann heißt es wohl doch viel viel tippen :-(

Werbeanzeige