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

1

05.10.2003, 11:25

TRIBASE_API

Wofür steht das?

Es gibt doch da auch WinAPI, oder?

Wozu wird das verwendet und wie wurde denn TRIBASE_API deklariert, damit man das so nutzen kann?

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

2

05.10.2003, 12:59

TRIBASE_API dient dazu, dass Funktionen und Klassen aus der DLL exportiert werden, wenn die Engine selbst kompiliert wird. Von außerhalb dient es dazu, dass die Funktionen und Klassen importiert werden. Deklariert ist es in TriBase.h. Es ist ein Standardverfahren, die Sache so zu lösen.

3

05.10.2003, 13:15

und was beweirkt dieses Exportieren?

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

4

05.10.2003, 13:22

Ohne Exportieren in die DLL wäre die DLL völlig nutzlos. Nur so wird es ermöglicht, dass die Programme, welche die Engine verwenden, alle Funktionen und Klassen aus der DLL importieren können.

5

05.10.2003, 13:31

achso.

und wie sieht das mit dem importieren im quellcode aus?

ist das bei der winapi das gleiche prinzip mit dem exportieren?

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

6

05.10.2003, 13:39

Ja, es ist so ähnlich wie bei der WinAPI. Ein Windows-Programm importiert Funktionen wie CreateWindow, ShowWindow, GetDC, SetPixel etc. aus den DLLs des Betriebssystems.

7

05.10.2003, 14:30

kannst du mir da mal ein Beispiel schreiben?
(vonm "TRIBASE Importer" und von der WINAPI)

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

8

05.10.2003, 14:37

Ich verstehe nicht, was Du meinst.
In der Engine sind alle Funktionen und Klassen mit TRIBASE_API deklariert. Wenn Du die Engine selbst kompilierst, hat TRIBASE_API den Wert __declspec(dllexport). Das sorgt dafür, dass alles exportiert wird. Wenn Du eine Anwendung kompilierst und nicht die Engine selbst, also nur den Header einbindest, hat das Makro den Wert __declspec(dllimport). Das ist alles - mehr nicht.

9

05.10.2003, 15:42

ok danke

Werbeanzeige