生成された COM Interop アセンブリでget_Dataとして使用できるDataプロパティを持つMyCOMCtlクラスを持つCOM コントロールがあります。この COM コントロールに対して、次の 2 つの異なる相互運用機能アセンブリが生成されます。
- VS2010 に COM コントロールを追加すると、相互運用機能 (および Ax...) が自動的に生成されます。
- VS2010 コマンド プロンプトから TLBIMP v4 ツールを使用します。
問題は、相互運用アセンブリが TLBIMP を使用して生成されると、get_Data が次のようになることです。
dynamic MyCOMCtl::get_Data(...)
しかし、VS2010 によって自動生成されると、次のようになります。
object MyCOMCtl::get_Data(...)
私のコードには、 objectを返す 2 番目のコードが必要です。VS2010 プロジェクトは.NET Framwork 4 Client Profileをターゲットにしており、TLBIMP のバージョンは 4.0.30319.1 です。
なぜこうなった?これを修正する方法はありますか?