DOBON.NET DOBON.NETプログラミング掲示板過去ログ

相互運用性について

環境/言語:[C# VB6]
分類:[.NET]

いつもお世話になっております。

現在C#を使用してクラスライブラリを作成しております。
これをVB6でも使用できるように考えていて、いちおうほぼ動くようにはなりました。

しかし引数の数が違う関数だけがどうしてもVB6のほうでは引数の数が合わないとか、エラーが出てしまいます。

C#のほうでは単純に引数の数を変えて同じ関数名で関数を作る方法と、
params キーワードを使用して引数の数を可変にする方法を試してみたのですが
どちらもエラーになってしまいました。

VB側での利用方法は参照設定で読み込んでクラスとして宣言して使用しています。

なにかよい方法があれば教えてください。
よろしくお願いします。
COM では、メソッドのオーバーロードは使用できません。
そのため、オーバーロードがあった場合、.NET のエクスポータは自動的に序数を付けて区別するようです。
http://msdn2.microsoft.com/ja-JP/library/28w1w83f.aspx
一度そのアセンブリが COM でどう見えているのか、OLE/COM Object Viewer で見てみることをお勧めします。
あら〜、メソッドのオーバーロードは使用できないんですね^^;;
とりあえず別の方法を考えてみます。
ありがとうございました。

DOBON.NET | プログラミング道 | プログラミング掲示板