私のwebAPIプロジェクトでVB6 DLL(AB5COM.dll)を使用すると、この厄介な問題が発生します。 ローカルVS2015ですべて正常に動作しています。問題は、公開サイトを展開した後にリモートのIIS 7.5(Win2008 R2)でしか発生しません。 私はこのソリューションを2つのプロジェクトで使用しています。COMオブジェクトをキャストすることができません - エラー:そのようなインターフェイスはサポートされていません
、私はいくつかのことを試してみた -
- 生成interop.AB5COM
- 無効に埋め込むとx86へのローカル
- プラットフォームの変更
- アプリケーションプールが32ビット
- [アセンブリサポートコピー:のComVisibleを(true)]
- マイクラスの属性として[Guid( "xxxxxxx-xxxxx-xxxxxx-xxxxxx")]を追加する
すべて役に立たなかった。ローカルVS2015が動作し、リモートIIS7.5がこの例外で失敗します。
System.InvalidCastException: Unable to cast COM object of type 'System.__ComObject' to interface type 'AB5COM.trxAB5core'. This operation failed because the QueryInterface call on the COM component for the interface with IID '{AF42661C-D369-454A-A005-55D51037166A}' failed due to the following error: No such interface supported (Exception from HRESULT: 0x80004002 (E_NOINTERFACE)).
COMのDLLが公開されていない、との相互運用を登録することができないので、私はまた、私はします。regsvr32を使用して登録する必要があるDLLを見つけることができません。
あなたの助けに感謝します。 [OK]を
Thxを
誰でもこれを支援できますか? –
「COM dllは公開されていません」とはどういう意味ですか? –
私はプロジェクトを公開するとき、BINフォルダにはCOM dllもinterop.COM dllもないことを意味しました。 しかし、私は私のプロジェクトDLLは、COM DLLが存在する物理的な場所への参照を持っていると仮定します(これは私の前提です)。 –