Fehlermeldung Dll-Einsprungpunkt

Hallo,

ich habe eine DLL geschrieben und möchte diese mit VBA einbinden:
Code VBA:

Option Explicit
Private Declare Function DllFunction1 Lib „example.dll“ (ByVal Text As String) As Integer

Sub Main()
Dim Result As Integer
Result = DllFunction1(„TEST“)
Debug.Print "Das Ergebnis ist: " & Result
End Sub

Code in C:
#include

#define DLLEXPORT __declspec(dllexport)

BOOL WINAPI LibMain(HINSTANCE hDllInst, DWORD fdwReason, LPVOID lpvReserved)
{
switch (fdwReason) {
case DLL_PROCESS_ATTACH:
break;
case DLL_PROCESS_DETACH:
break;
case DLL_THREAD_ATTACH:
break;
case DLL_THREAD_DETACH:
break;
}
return TRUE;
}

DLLEXPORT int DllFunction1(LPSTR message)
{
return 1;

Ich bekomme aber immer die Meldung, dass der DLL-Einsprungpunkt nicht gefunden wird.
Ich hab’s auch schon mit DllMain probiert, aber das Ergebnis ist das gleiche.
Kann mir da jemand helfen?

(Das die DLL sinnlose Parameter hat weiß ich, das Ding ist nur zum Testen)
Vorab schon mal vielen Dank :smile:

Ben

Hallo,

falls es jemanden interessiert: Es war das Name-Mangling des Compilers. Exportiert wurde die Funktion „DllFunction1“ als „_DllFunction_1“
Eine .DEF Datei mit der Richtigstellung des Namens brachte den Erfolg.
Weiter zu beachten: Die Datentypen sind unterschiedlich: int != Integer!

Ansonsten ist das erledigt.

Ben

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]