![]() |
VC-Dll Projekt im BCB kompilieren
Hallo,
ich versuche gerade mein VisualStudio Projket im Borland Builder 2006 zu kompilieren, das geht auch soweit gut bis ich dann Zitat:
Zitat:
Nachtesten lässt es sich auch ganz einfach in einem neuen Projekt, einfach New->Other->DLL, als C++ ohne VCL, aber Multithreaded und VC++ Style.
Code:
Gruß,
//---------------------------------------------------------------------------
#include <windows.h> //--------------------------------------------------------------------------- #define DllExport extern "C" __declspec(dllexport) //--------------------------------------------------------------------------- DllExport int BCBTest() { return 1234; } //--------------------------------------------------------------------------- BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fwdreason, LPVOID lpvReserved) { return 1; } //--------------------------------------------------------------------------- Daniel |
Re: VC-Dll Projekt im BCB kompilieren
Verwendest du ein .def File? Das sollte man immer machen (zumindest bei VS).
|
Re: VC-Dll Projekt im BCB kompilieren
Nein eine def Datei liegt nicht vor, nich im VS und naja ergo nicht im BCB, das war eh ein Kramp die ganzen Sachen in ein BCB Projket zu bekommen, aber das ist ja eine andere Geschichte ;)
Kann die def Datei nicht vom VS erstellt werden? |
Re: VC-Dll Projekt im BCB kompilieren
Zitat:
Warum willst du keine Unterstricht vor Symbolnamen haben? Das ist C-Konvention. Und wenn du die Option im DLL-Projekt anschaltest, mußt du sie auch in den Projekten aktivieren, in welchen du die DLL benötigst. |
Re: VC-Dll Projekt im BCB kompilieren
Das hat wohl weniger was mit wollen zu tun, sondern eher mit der Kompatibilität zu der Anwendung die die Dll verwendet.
|
Re: VC-Dll Projekt im BCB kompilieren
Kriegt man bei VS es ueberhaupt hin das der Export ohne Unterstrich und dem @xx (xx = Anzahl Bytes der Parameter) ohne .def File funktioniert?
Ein .def File kann man sich selber schreiben. Das Format is wirklich simpel. scha mal in der Hilfe nach. es duerfte dort beschrieben sein. |
Re: VC-Dll Projekt im BCB kompilieren
Das name decoration hat etwas mit der calling convention und das es als extern "C" deklariert ist zu tun, aber das ist ja auch nicht mein problem ;)
Sobald ich den "-vu" Schlater wieder wegnehme wird die Library einwandfrei erzeugt, wieso? Nur dann kann sie auch nicht mehr von der Anwendung geladen werden weil alle exports prefixt sind. Ich verzweifel hier noch... :( |
Re: VC-Dll Projekt im BCB kompilieren
Welche Aufrufkonvention benutzt das Programm, das die DLL verwendet? Möglicherweise __stdcall? Da wird gewöhnlich kein Unterstrich vorangesetzt...
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:59 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz