COMの後継となるのが「.NET Framework」
ただし、今でも現役で使われている
しかし、COMにはいくつか問題があった。たとえば、機能を追加するなどコンポーネントのバージョンアップをする場合、互換性を保たないと、旧アプリケーションやサードパーティのアプリケーションが動作しない可能性があった。同一のコンポーネントは、1つしか登録できないという制約があり、システムディレクトリにおかれていたため、古いコンポーネントを同梱したアプリケーションが新しいコンポーネントを上書きしてしまう可能性があった。
COMを使うActiveXも一時は隆盛を極めたが、セキュリティ的な問題が多発し、結果的に制限された形でしか利用できないようになり、後継のEdgeでは廃止されている。
ネットワークを介してCOMを呼び出せるようにしたものがDCOM(Distributed COM)である。コンポーネントを別のマシンに置き、ネットワークを介して呼び出せるようにしたものだ。このDCOMは、のちに改良されてCOM+と呼ばれるようになった。
このCOMやCOM+の後継となるのが.NET Framework(やCLR:Common Language Runtime)である。逆に言えば、.NET FrameworkはCOMの問題を解決できるような仕組みとして作られた。しかし、前述のようにCOMを廃止することはできず、.NET Frameworkでは、COMコンポーネントを簡単に扱えるようにしてある。
.NET Frameworkでは、COMのコンポーネントに対応するものとして「アセンブリ」を定義する。アセンブリには、リフレクションと呼ばれる仕組みがあって、アセンブリが含むクラスやそのメソッド、引数などの情報を調べることができる。アセンブリは、原則、特定のアプリケーション(他のアセンブリ)から呼び出すことが前提となるローカルなものだが、「グローバル・アセンブリキャッシュ」(GAC。Global Assembly Cache)にインストールすることで他のプログラム(アセンブリ)から利用可能になる。
現在ではソフトウェア開発で、COMコンポーネントを作ることは少なくなったが、Windowsのコンポーネントを呼び出して使うことは結構ある。COMは古い技術だが、いまだに現役と言える。

この連載の記事
-
第508回
PC
Scalable Vector Graphics(SVG)そもそも何なのか? -
第507回
PC
Windows 11の「開発者モード」とは何か? -
第506回
PC
Windows 11は早くも来秋登場の26H2プレビューの準備が始まる -
第505回
PC
結構変化しているWindows 11のエクスプローラーの基本設定を見直す -
第504回
PC
新しいOutlookとOutlook Classic、そろそろ古いOutlookとExchangeの組み合わせは引退の頃合いか -
第503回
PC
機能が増えたこともあり、寄せ集めから統合化に進むWindowsの便利ツール「PowerToys」 -
第502回
PC
Windows 11でBluetoothのオーディオ新規格「Bluetooth LE Audio」を試す -
第501回
PC
Windows 11 Ver.25H2での変更点、新機能を整理する -
第500回
PC
Windows 11 Ver.25H2が完成した -
第499回
PC
Windowsでの致命的だが回復可能なエラーに備える手段を2つ紹介 -
第498回
PC
Windows Terminalの安定版V1.23が公開 設定UIが改良される - この連載の一覧へ











