Visual Basic 中学校 掲示板 投稿の管理
タグのない投稿を抽出
統計
RSS
Visual Basic 中学校
投稿一覧
COM相互運用の登録がグレーになってしまいます
この投稿へのリンク
https://keijiban.umayadia.com/ThreadDetail.aspx?ThreadId=30667#CommentId84811
この投稿の削除
削除パスワード
削除する
コメント本文
投稿者
るきお
 (社会人)
投稿日時
2021/11/7 21:36:17
最近 COM を使おうとしたことがなかったので気が付きませんでした。確かにグレーアウトされていますね。
少し試したところ .NET 5 のクラスライブラリではグレーアウト、.NET Farmework 4.8 のクラスライブラリではOKでした。
.NET Core/.NET 5以降だと、従来とやり方が違うからでしょうか?私もよくわかりませんが、ひとまず、.NET CoreをCOMとして呼び出し可能にする記事はここにありました。
https://docs.microsoft.com/ja-jp/dotnet/core/native-interop/expose-components-to-com
>何が原因で、どうすればクラスライブラリを従来のように、
>各種アプリ(コンソールとかフォームアプリとか、クラスライブラリとか)から
>クラスライブラリが出来るようになるのでしょうか?
ちょっと肝心のご質問がわかりにくかったのですが、
各種アプリからクラスライブラリを呼び出したいのであれば、COMにする必要はありません。むしろCOMにしない方がベターです。
直接.NETのコンポーネント(アセンブリ)としてビルドして参照設定をするのが通常です。NuGetなどのパッケージを経由する方法もあります。
詳しくはこちらで説明しています。
https://www.umayadia.com/VBStandard2/Standard33.htm
この、「COM相互運用機能の登録」が必要になるのは、非.NETの世界(ExcelやVBScriptなど)から、.NETを呼び出す場合です。