Einzelnen Beitrag anzeigen

xaromz

Registriert seit: 18. Mär 2005
1.682 Beiträge
 
Delphi 2006 Enterprise
 
#1

DLL im VS erstellen

  Alt 8. Mär 2008, 19:59
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:
    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 *))
DLL:
Code:
__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);
Import:
Delphi-Quellcode:
function closeDictionary: Integer; cdecl; external 'hyphenate.dllname 'closeDictionary';
function initializeDictionary(Dictionary: PChar): Integer; cdecl; external 'hyphenate.dllname 'initializeDictionary';
function currentCodePage: PChar; cdecl; external 'hyphenate.dllname 'currentCodePage';
function hyphenLength(Word: PChar): Integer; cdecl; external 'hyphenate.dllname 'hyphenLength';
function hyphenate(Word, Hyphenated: PChar): Integer; cdecl; external 'hyphenate.dllname 'hyphenate';
Gruß
xaromz
I am a leaf on the wind - watch how I soar
  Mit Zitat antworten Zitat