![]() |
DLL im VS erstellen
Hallo,
ich habe gerade ein kleines Problem. Ich erstelle eine DLL in VS2008, die ein paar Funktionen bereitstellt. Leider kann ich diese nicht über den Namen importieren, sondern nur über den Index. Ich vermute, ich muss im VS irgendetwas einstellen, die Namen werden nämlich reinkompiliert. Kann mir da jemand helfen? Auszug von BINDUMP:
Code:
DLL:
ordinal hint RVA name
1 0 00001010 ?closeDictionary@@YAHXZ = ?closeDictionary@@YAHXZ (int __cdecl closeDictionary(void)) 2 1 000010D0 ?currentCodePage@@YAPADXZ = ?currentCodePage@@YAPADXZ(char * __cdecl currentCodePage(void)) 3 2 000010F0 ?hyphenLength@@YAHPAD@Z = ?hyphenLength@@YAHPAD@Z (int __cdecl hyphenLength(char *)) 4 3 000011A0 ?hyphenate@@YAHPAD0@Z = ?hyphenate@@YAHPAD0@Z (int __cdecl hyphenate(char *,char *)) 5 4 00001040 ?initializeDictionary@@YAHPAD@Z = ?initializeDictionary@@YAHPAD@Z (int __cdecl initializeDictionary(char *))
Code:
Import:
__declspec(dllexport) int initializeDictionary(char* dictionary);
__declspec(dllexport) int closeDictionary(); __declspec(dllexport) char* currentCodePage(); __declspec(dllexport) int hyphenLength(char* word); __declspec(dllexport) int hyphenate(char* word, char* hyphenated);
Delphi-Quellcode:
Gruß
function closeDictionary: Integer; cdecl; external 'hyphenate.dll' name 'closeDictionary';
function initializeDictionary(Dictionary: PChar): Integer; cdecl; external 'hyphenate.dll' name 'initializeDictionary'; function currentCodePage: PChar; cdecl; external 'hyphenate.dll' name 'currentCodePage'; function hyphenLength(Word: PChar): Integer; cdecl; external 'hyphenate.dll' name 'hyphenLength'; function hyphenate(Word, Hyphenated: PChar): Integer; cdecl; external 'hyphenate.dll' name 'hyphenate'; xaromz |
Re: DLL im VS erstellen
Hallo,
hat sich erledigt. Einfach extern "C" vor den Export setzen. Warum findet man eigentlich immer dann die Lösung, wenn man nach stundenlanger Suche im Netz postet :? ? Gruß xaromz |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:43 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