Visual Studio:
Создаешь новый проект
Win32 Dynamic-Link Library. Проект долджен быть
пустым. После создания добавляешь cpp файл. В нем пишешь:
[highlight=cpp]
#define BLITZDECL extern "C" _declspec(dllexport)
struct list {
int a;
float b;
};
BLITZDECL void _stdcall DLLFunction(list* var)
{
var->a = var->a + 10;
var->b = var->b - 0.6f;
}
[/highlight]
BlitzBasic:
[highlight=blitzbasic]
Type TList
Field int_val%
Field float_val#
End Type
var.TList = New TList
var\int_val = 5
var\float_val = 7.3
Print var\int_val
Print var\float_val
Print
WaitKey()
DLLFunction(var)
Print var\int_val
Print var\float_val
Print
WaitKey()
Delete Each TList
End
[/highlight]
decls-файл:
.lib "dll.dll"
DLLFunction(void*):"_DLLFunction@4"