QA@IT
«回答へ戻る

回答を投稿

最初のご回答の

WINAPI や __stdcall など使われていません。
そもそも dllがそういう使い方ができるように作られていませんので、Declare Functionでは呼び出す事ができません。

がようやくきちんと理解できました。

よく理解しないで、危険なことをしていたんですね。

cdeclとstdcallの違いも理解できました。
スタックメインで処理するものとWindowsAPIでは、
そもそもの呼び出し方が違うですね、
だから、「DLLが正しく呼び出せません。」になるわけでした。

そして、felicalibがstdcallでなく、cdecl(っぽい?)であることもわかりました。
stdcallで呼び出せるような作りではないですね。
そして、自分でstdcallな関数を作るには今の知識では難しいですね。

.NETコンポーネントの生成にて、
「CallingConvention」を指定し、DLLの呼び出しを行うように修正を行いたいと思います。

とても丁寧で、自分のような知識のないものにもわかりやすかったです。
勉強になりました。

本当にお世話になりました。
ありがとうございます!
また機会がありましたら、よろしくお願いいたします。

最初のご回答の
>WINAPI や __stdcall など使われていません。
そもそも dllがそういう使い方ができるように作られていませんので、Declare Functionでは呼び出す事ができません。

がようやくきちんと理解できました。

よく理解しないで、危険なことをしていたんですね。

cdeclとstdcallの違いも理解できました。
スタックメインで処理するものとWindowsAPIでは、
そもそもの呼び出し方が違うですね、
だから、「DLLが正しく呼び出せません。」になるわけでした。

そして、felicalibがstdcallでなく、cdecl(っぽい?)であることもわかりました。
stdcallで呼び出せるような作りではないですね。
そして、自分でstdcallな関数を作るには今の知識では難しいですね。

.NETコンポーネントの生成にて、
「CallingConvention」を指定し、DLLの呼び出しを行うように修正を行いたいと思います。

とても丁寧で、自分のような知識のないものにもわかりやすかったです。
勉強になりました。

本当にお世話になりました。
ありがとうございます!
また機会がありましたら、よろしくお願いいたします。