VBからCのDLLを使用するメモ
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
VBからCのDLLを使用するメモ
VB側で構造体配列として宣言した変数をCのDLLに渡す場合、属性指定が必要である。
【例】StTest変数をCのDLLに渡して、構造体の中を変更させる場合
■構造体
Public Structure StSample
Dim aaa As Integer
Dim bbb As Double
End Structure
■変数宣言
Public StTest() As StSample
■関数宣言
Private Declare Function TESTFUNC Lib "TARGET.dll" Alias "testfunc" ( _
ByRef RecCnt As Integer, _
) As Integer
上記関数を使って変更する。
DLL側で変数の内容を変更しない場合は、InAttribute属性だけでもよい...