Gambas 调用动态链接库
gambas吧
全部回复
仅看楼主
level 5
一楼献给国家
Public Sub Form_Open()
Dim ddd As Integer = 9
TextArea1.Text &= "我的PID --> " & getgid() & Chr(13)
p = VarPtr(ddd)
tmp = Addp(p)
TextArea1.Text &= tmp & Chr(13)
TextArea1.Text &= Add(4, 5) & Chr(13)
p = pAdd(22, 33)
TextArea1.Text &= p & Chr(13
TextArea1.Text &= Integer@(p) & Chr(13
End
2016年08月06日 13点08分 1
level 5
'感觉这样调用起来很方便,
Library "/home/lei/Gambas3Wk/GambasCDLL/libGamDll"
Extern Add(a As Integer, b As Integer) As Integer
Extern Addp(a As Pointer) As Integer
Extern pAdd(a As Integer, b As Integer) As Pointer
Public p As Pointer
Private tmp As Integer = 99
下面是C代码
#include "GamDll.h"
int Add(int a, int b)
{
return a+b;
}
int Addp(int *a)
{
int b;
b=*a;
return 2*b;
}
int* pAdd(int a, int b)
{
static int rt;
rt=a+b;
int* p;
p=&rt;
return p;
}
2016年08月06日 13点08分 2
level 5
下面是结果
我的PID --> 1000
18
9
7F62309CA024
55
2016年08月06日 13点08分 3
level 1
还没试过调动态链接库
2017年01月23日 18点01分 4
1