- PR -

.NetAP(C#)間でのCOM通信

1
投稿者投稿内容
未記入
会議室デビュー日: 2009/01/29
投稿数: 1
投稿日時: 2009-01-29 15:13
C#でCOMコンポーネントDLLを作成しました。

== DLLの作成方法概要 ======================================
@COM参照可能なアセンブリでC#クラスライブラリを作成
A>RegAsm.exe /codebase <DLLのパス> /tlbで、レジストリ登録+タイプライブラリ作成
===========================================================

このDLLを使用して他の言語からCOM通信(DLL起動)可能なのは確認済みです。

この手順で作成したタイプライブラリをC#の他のプロジェクトからCOM参照(タイプライブラリを選択)しようとするエラーになります。

== エラーの内容 ======================================
ActiveXタイプライブラリ xxxxが、.Netアセンブリからエクスポートされましたが、参照として追加できません。.NETアセンブリへの参照を追加して下さい。
======================================================

他のサイトで「.NetアセンブリなのでCOMを経由する必要はなく直接参照で良い為、このエラーになる。DLLを直接参照して下さい」といった記載を見つけました。

本当に.Netのマネージコードから.NetアセンブリをCOM経由で呼ぶことはできないのでしょうか?
またそうした場合、呼び元から呼び出すDLLのパスが特定できないようなシーンでの連携は、全てGAC(C:\\\\WINDOWS\\\\assembly)を使用するということになるのでしょうか?

以上、よろしくお願いします。
1

スキルアップ/キャリアアップ(JOB@IT)