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

20.05.2007, 22:04

error C2491 und was nun?

Hallo Leute.

Ich versuche momentan die Tribase Engine zu kompilieren, habe einige Fehler schon behoben, bei der jetzigen Fehlerausgabe bin ich aber mit meinem Latein am Ende und auch die Suche im Forum hat nix gebracht.


Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
e:\Gamedevelop\Tribase\Src\TriBase.cpp(61) : error C2491: 'tbInit': Definition von Funktion für dllimport nicht zulässig
e:\Gamedevelop\Tribase\Src\TriBase.cpp(109) : error C2491: 'tbExit': Definition von Funktion für dllimport nicht zulässig
e:\Gamedevelop\Tribase\Src\TriBase.cpp(168) : error C2491: 'tbDoMessageLoop': Definition von Funktion für dllimport nicht zulässig
e:\Gamedevelop\Tribase\Src\TriBase.cpp(247) : error C2491: 'tbDelay': Definition von Funktion für dllimport nicht zulässig
e:\Gamedevelop\Tribase\Src\TriBase.cpp(259) : error C2491: 'tbSetAppActive': Definition von Funktion für dllimport nicht zulässig

Das Build-Protokoll wurde unter "file://e:\Gamedevelop\Tribasetest3\Debug\BuildLog.htm" gespeichert.
Tribasetest3 - 5 Fehler, 7 Warnung(en)


---------------------- Fertig ----------------------

    Erstellen: 0 erfolgreich, 1 fehlgeschlagen, 0 übersprungen


Ich habe noch die 1. Auflage des Buches erworben und benutze das darauf mitgelieferte DX SDK, das Microsoft Platform SDK ist auch installiert und alles wie hier so oft beschrieben verlinkt. Die zusätzlichen Dateien (kernel32.lib usw.) sind auch verlinkt.

Ich benutze das Microsoft .NET 2003 Studio mit VC++ 7 und habe ein neues Projekt erstellt (leere Windows 32 Konsolenanwendung) und habe einfach die include und resource Dateien eingebunden und wollte daraufhin die Datei TriBase.cpp kompilieren. Nun hänge ich bei dem obigen Fehler.

Kann mir vllt. jemand weiterhelfen?

Danke im Vorraus

Gruß

Dark

grek40

Alter Hase

Beiträge: 1 491

Wohnort: Dresden

  • Private Nachricht senden

2

20.05.2007, 23:09

Wie meinst du das, mit 'Neues Projekt erstellt und einfach Dateien eingebunden'? Kannst du nicht einfahc die vorhandenen Projektdaten für dein VS konvertieren lassen?

3

20.05.2007, 23:16

Soll einfach heißen, ich habe die gesamten .h und .cpp Dateien der Tribase Engine zu dem Projekt hinzugefügt und dabei wurden sie konvertiert, ohne Probleme.

Noch was zu den Projektdaten, falls du das meinst:

Die einzige Projektdatei, die ich gefunden habe ist baseclasses.sln im Unterordner CShowBaseClasses im Ordner include. Dieses Projekt kann ich nun kompilieren, allerdings ist die Engine doch wieder eine ganz andere Geschichte und muss über Tribase.cpp kompiliert werden, oder?

Irgendeine Projektdatei zur Engine (außer die oben genannte) habe ich nämlich nicht gefunden.

grek40

Alter Hase

Beiträge: 1 491

Wohnort: Dresden

  • Private Nachricht senden

4

20.05.2007, 23:20

Das Problem ist ja, dass man die Tribase nicht als leere Win32-Konsolenanwendung sondern als DLL erstellen sollte...

5

20.05.2007, 23:43

Dann mal als Frage, ob ich nicht hier viel Lärm um nichts mache:

Ich habe alle Binärdateien gelöscht, inklusive der dlls, habe dann das baseclasses Projekt geöffnet, etwas ausgebessert und schließlich hat es funktioniert und nun sind auch wieder zwei dlls im bin Ordner vorhanden.

Wurde das nun alles in einem Schritt getan?

Ich habe mich an der Anleitung für VC 2005 etwas orientiert und dort werden baseclasses und engine getrennt behandelt. Falls das bei mir nun (erste Auflage eben) nicht nötig ist, hätte sich mein Problem eigentlich schon erübrigt, denn dann ist es durchkompiliert.

(Ich habe es mir nun aber anscheinend, wie sagt man so schön, 'kaputtsachverständigt', meldet nun beim kompilieren von baseclasses Fehler, ist aber kein prob, ich kopiers einfach von der CD neu runter, dann solte es wieder gehen)

Werbeanzeige