2009-07-22 9 views
0

VB.NETコードにC Dllを使用している問題が発生しています。私はC言語でこのDLLの実装を示す.Hファイルを持っています。 この.Hファイルには、いくつかの構造型の変数を含む多くの構造体と共用体が含まれています。これらの構造体と共用体へのポインタを含むメイン構造体があり、最終的にメイン構造体のアドレスがdll関数に渡されます。VB.netコードでC DLLを呼び出すことを有効にする

vb.netでマーシャリングを使用して構造体と共用体を作成する方法と、構造体と共用体のアドレスを含む構造体のアドレスを渡す方法を理解できます。

この問題を解決してください。どんな助けもありがとう。

おかげで、ヨギ

答えて

1

Cの構造定義をVB.NETのPInvokeコードに変換する無料のツールCLRInsideOutがあります。これは、プラットフォームの呼び出しと構造体と共用体のマーシャリングの詳細です。続きを読むon MSDN here免責事項:JaredParは、彼がwrote some of the tool以来、本当にこの回答のポイントを得るはずです。

0

あなたはあなたの問題について多くの詳細を提供していないので、私は唯一のドキュメントにあなたを向けることによって、あなたを助けることができます。 MSDN

+0

ありがとうございました。私はネット上でマーシャリングについて多くを読む。私は構造体を作成しましたが、問題は、dll関数を呼び出すとNullに1つの構造体の値を設定しますが、他のものはfucntion呼び出しの前に渡したものと同じ値を含むということです。 – Yogi

+0

多分それは関数の戻り値ですか? – Wilhelm

関連する問題