C#COMコンポーネントを登録しますか?
質問
Managed C ++から使用しているC#comコンポーネントを開発しました。すべてが正常に動作するとき、私の開発マシンで。しかし、ファイルを配布すると、コンポーネントが登録されていないというエラーを受け取りました。 dllでregsvr32を試行すると、エラーが発生します(C#dllを登録できません)。このCOM dllを正しく登録するにはどうすればよいですか?
解決
regasm を< code> / codebase (ComVisibleである必要があります[ただし、 Patrick McDonald が正しく出力されるため、ローカルで機能するため、すでにそれを過ぎています])
他のヒント
アセンブリがGAC(グローバルアセンブリキャッシュ)にインストールされていない場合は、siwtch / codebase
でRegAsmを使用します。
通常行う必要があることがわかります:
regasm /codebase
COMはアセンブリを読み込むためにアセンブリの正確な位置を知る必要があるため。
他の人が示唆しているように、C#プロジェクトをCOM可視として設定する必要があります(プロジェクト設定、アプリケーション、アセンブリ情報ボタン)。
各クラスの前に[ComVisible(true)] / [ComVisible(false)]属性を使用して、クラスを表示するかどうかの詳細な制御を取得できます
所属していません StackOverflow