投稿日 | : 2004/08/21(Sat) 16:25 |
投稿者 | : まー |
URL | : |
タイトル | : Re: ActiveXからDLLの呼出しについて |
自己レスです。
ついに解決しました!!
以下のように宣言を変更することでうまくいきました。
VB側宣言
Private Declare Function TestFunc Lib "TestLib" Alias "_TestFunc@16" (ByV
al param1 As String, ByVal param1 As Long, ByVal param1 As String, ByVal param1 As String) As
Long
VC側宣言
extern "C" __declspec(dllexport) long __stdcall TestFunc(char *param1, long param2
,char *param3,char *param4)
MSDNに__stdcallの使用方法がのっていたのですが、@以降の設定方法が
意味不明でした。
引数のバイト数を総計すればよかったんですね。
しかし、通常EXEではAliasは必要なくてActiveXでは必要になるのは
なぜなんでしょうね。(わかりにくいな〜)