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

Das Gurke

Community-Fossil

  • »Das Gurke« ist der Autor dieses Themas

Beiträge: 1 996

Wohnort: Pinneberg

Beruf: Schüler

  • Private Nachricht senden

1

18.02.2006, 00:29

Projekte auf DLLs aufteilen

Ja, es gab schon Threads in diese Richtung, so richtig klug bin ich bisher aus keinem geworden, also auf ein neues.

Vorab, ich kenne diese merkwürdige Funktion mit der man ein Handle für eine DLL erstellt. Dann gabs da noch Procs und was weiss ich nicht alles, aber es sollte doch auch einfacher gehen?

Wollte mich erst an folgendem Beispiel orientieren: *WikipediaLink*
Klappte jedeoch mit dem VS8 nicht.

Am Ende möchte ich ein Resultat wie bei der TriBase Engine haben. Einfach eine Lib und einen Header linken und dann flutscht das ganze.

Auf diese Art und Weise müssten doch 2 Personen an einem Projekt arbeiten können? Einer arbeitet an ner Exe, der andere an ner DLL. Und abgesehen davon sollte man das ganze dann doch auch leicher updaten können?

Nur wie komm ich dahin? ^^

koschka

Community-Fossil

Beiträge: 2 862

Wohnort: Dresden

Beruf: Student

  • Private Nachricht senden

2

18.02.2006, 00:37

Also wieder auf ein neues, wie in dem anderen DLL Thread (thx bass) schon gesagt kann man DLL's dynamisch linken. Man kann aber dem Compiler auch sagen "Hey, schau da, die brauch ich eh, also schmeiss die gleich mit rein", das trifft z.B. bei DirectX Anwendungen ein. Man weiss eh das man DX benutzen will... also mit linken, fertig.

Zitat


Auf diese Art und Weise müssten doch 2 Personen an einem Projekt arbeiten können? Einer arbeitet an ner Exe, der andere an ner DLL. Und abgesehen davon sollte man das ganze dann doch auch leicher updaten können?


Noch einfacher wäre es ja, wenn er eine z.B. eine Kollisionsklasse schreibt, der andere eine andere. Am Anfang der arbeiten wird ein Interace bestimmt, was die Klassen können soll und wie die Funktionen/Methoden heissen.

Eine DLL nimmt man im Normalfall, wie der Name schon sagt, als Bibliothek und nicht als Entwicklungsumgebung.

C-/C++-Quelltext

1
2
3
4
5
6
7
#include <windows.h>

// Die Funktion, die anderen Programmen zur Verfügung gestellt werden soll

// (in diesem Beispiel: Addieren zweier Zahlen)

__declspec(dllexport) double AddNumbers (double a, double b) {
        return a + b;
}


Ich hab das ganze geändert, ich weiss nicht ob VS8 noch MS_VER kennt.... so müsste es auf jeden Fall gehen, AddNumbers wird aus der Funktion exportiert.

3

18.02.2006, 17:15

Hmm mach dir noch nen kleines define hin... oder guck dir einfach mal Davids Dll an... oder eine von mir :D Also das ist kein Problem, ... und ja... zumindest sind die Updates dann kleiner, weil man dann nicht immer die gesammten Files updaten muss, sondern nur die entsprechende Dll..

Kannst auch bsw. ein Control in ne Dll auslagern... dann verlierst de weniger die Übersicht... also ich fands so besser ;)
Devil Entertainment :: Your education is our inspiration
Der Spieleprogrammierer :: Community Magazin
Merlin - A Legend awakes :: You are a dedicated C++ (DirectX) programmer and you have ability to work in a team? Contact us!
Siedler II.5 RttR :: The old settlers-style is comming back!

Also known as (D)Evil

Werbeanzeige