Dll erstellen mit Cpp
-
Hi,
ich habe mir ein paar Klassen zusammengeschrieben für einen kleinen Spielewrapper. Derzeit erstelle ich einfach ein neues Projekt und binde die Klassen (header und src datein) ein um das neue Projekt davon wissen zu lassen.
Nun möchte ich aber das ganze als eine dll bauen und diese einbinden. Wie mache ich das bzw. welches generelle Vorgehen kann ich denn verwenden (Projekteinstellungen/konfiguration/aufbau)?
Nehme gerne auch nur links an^^
mfg freaker
-
File -> New -> Project und als Application Type "DLL" anstelle von Console- oder Windowsapplication wählen und anschauen wie die das machen

-
Wenn du Klassen in einer DLL verwendest, musst du sie allerdings "dynamisch binden" und darfst sie nicht "dynamisch laden" (zB. mit LoadLibrary)
Ist deine DLL kompilliert, so füge die vom compiler erstellte .lib Datei dem Projekt als zusätzliche Abhängigkeit hinzu. Das Programm benötigt nun beim Start die DLL.
Binde auch unbedingt !!! die .h Datei deiner DLL ein, weil dort die __dllimport Anweisung in einem Makro enthalten ist, ohne die du deine Klasse nicht ansprechen kannst.
Also:
1. DLL erstellen, die Visual Studio Vorlage verwenden, wenn du noch nicht genau bescheid weißt
2. DLL kompillieren
3. Im die DLL benutzenden Projekt die .h Datei deiner DLL einbinden
4. In den Projektoptionen bei Linker->Eingabe bei zusätzliche Abhängigkeiten die erstellte .lib (NICHT die DLL selbst) eintragen, die DLL ins Ausgabeverzeichnis kopieren und fertig.