• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Cで作成したDLLをVBで呼出)

Cで作成したDLLをVBで呼出

このQ&Aのポイント
  • Cで作成したDLLの関数をVB6.0から呼び出す方法について教えてください。
  • VB6.0からCで作成したDLLの関数を呼び出す際、ParamArray args()の宣言方法について教えてください。
  • C側とVB側の引数の定義に問題がある可能性があります。正しい引数の定義方法について教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • 0KG00
  • ベストアンサー率36% (334/913)
回答No.1

http://hata.cc/docs/DLL/3.html リテラル定数でなく、変数にしてbyval渡しにすればよいのでは。

sekidoutyokka
質問者

お礼

おかげさまで解決致しました。 引数に関して、仰る通り「byval渡し」で解決致しました。 しかしながら、C側でvsprintfでは変数型の違いから上手く受け取れなかった様です。 (ここでおかしくなっておりました) なので、fmtの%dやら%sやらを読み込んで、switchで型ごとにva_argで一つずつ取得することに致しました。 これは質問に書いておりませんでしたので、 分かろう筈がないですね^^;すいません。 Cの関数から呼び出した限りでは上手くいっていたので、問題ないはずと決めてかかっておりました。 ありがとうございました。

sekidoutyokka
質問者

補足

アドバイス有難うございます。 実際に作成した呼出側関数では、 それぞれを変数に格納した後、呼び出しております。 ByRef,ByValとも試してみたのですが、上手く行きませんでした。

関連するQ&A

専門家に質問してみよう