.NET配列をCOMVB6ライブラリに渡そうとしています。VB6オブジェクトのCOMラッパーであるオブジェクトがあります。次のシグネチャを持つメソッドがあります。
[MethodImpl(MethodImplOptions.InternalCall,
MethodCodeType = MethodCodeType.Runtime)]
void AddEx([MarshalAs(UnmanagedType.Struct)] object vSafeArrayOfItems);
しかし、それを呼び出すArgumentException
と、次のメッセージが表示されます。
値が期待範囲内にありません。
例外のタイプとその説明は、渡された要素にも依存しません。
誰かがこの問題を回避する方法を知っていますか?
UPD:.NETラッパーアセンブリと参照元の.COMライブラリを削除しました。変更はありませんでした。