Мне нужно импортировать несколько функций библиотеки DLL, написанной на C, в проект VB6. У меня есть пример, написанный на C#, но я действительно не знаю, как сделать то же самое в VB6.
В C# это выглядит так:
[UnmanagedFunctionPointer(CallingConvention.Cdecl)]
public delegate int someCallback(IntPtr ch, uint chL, IntPtr cbData);
[DllImport("someDLL.dll", CallingConvention = CallingConvention.Cdecl)]
private static extern int someFunction(IntPtr con, someCallback callback, IntPtr cbData);
Все отлично работает в примере при вызове someFunction
.
Документация по dll просто дает мне следующее:
typedef int(SOMEAPI_CALL * someCallback)(const unsigned char *ch,
unsigned int chL,
void *cbData)
SOMEAPI_CALL someFunction(Con* con,
someCallback callback,
void* cbData)
Должен быть способ сделать то же самое в VB6, но у меня нет такого большого опыта работы с этим языком. Поискал в Интернете хорошее время, но не нашел ничего, что могло бы мне помочь.
Я знаю, как объявить функции из этой библиотеки в моем проекте, но это так. Как преобразовать эту UnmanagedFunctionPointer
штуку в код VB6, я просто не знаю.