- Код: Выделить всё
long __export Calc(int a, int b, int c)
{
return a*a+2*b+c;
}
TDUMP выдает следующее:
Exports from Project1.dll
2 exported name(s), 2 export addresse(s). Ordinal base is 1.
Sorted by Name:
RVA Ord. Hint Name
-------- ---- ---- ----
000012D0 1 0000 Calc(int, int, int)
000090F8 2 0001 ___CPPdebugHook
- тоже вроде все впорядке.
В ВБ пишу:
- Код: Выделить всё
Private Declare Function Calc Lib "project1.dll" (a As Integer, b As Integer, c As Integer) As Long
Private Sub Command1_Click()
Debug.Print Calc(1, 2, 3)
End Sub
Говорит - нет такой функции, "Сan not find dll entry point Calc"
Если пробовать не по имени, а по номеру, т.е.
- Код: Выделить всё
Private Declare Function Calc Lib "project1.dll" Alias "#1" (a As Integer, b As Integer, c As Integer) As Long
Private Sub Command1_Click()
Debug.Print Calc(1, 2, 3)
End Sub
Говорит - Bad dll calling convention.
Что нужно делать, чтобы присоединить ее(ДЛЛку) по-нормальному?