COM(コンポーネントオブジェクトモデル)
公開インターフェース、レジストリ登録、Apartment Modelなどを土台にした、Windowsのバイナリ互換コンポーネントモデル。
この概念が関わる関係
- ActiveXはCOM(コンポーネントオブジェクトモデル)を利用します。
- MFC(Microsoft Foundation Classes)はCOM(コンポーネントオブジェクトモデル)を利用します。
- COM(コンポーネントオブジェクトモデル)は型ライブラリ(TLB)を利用します。
- COM(コンポーネントオブジェクトモデル)はHKEY_CURRENT_USER\Software\Classesを利用します。
- COM(コンポーネントオブジェクトモデル)はCOMインターフェースを利用します。
- COM host(*.comhost.dll)はCOM(コンポーネントオブジェクトモデル)の実装を担います。
- VBA(Visual Basic for Applications)はCOM(コンポーネントオブジェクトモデル)を利用します。
- COM(コンポーネントオブジェクトモデル)はIID(インターフェース識別子)を前提とします。
- COM(コンポーネントオブジェクトモデル)はCLSID(Class ID)を前提とします。
- COM(コンポーネントオブジェクトモデル)はHRESULTを利用します。
- Media FoundationはCOM(コンポーネントオブジェクトモデル)を利用します。
- COM(コンポーネントオブジェクトモデル)はIUnknownを前提とします。
- COM(コンポーネントオブジェクトモデル)はHRESULTを利用します。
- IMFSourceReader(Source Reader)はCOM(コンポーネントオブジェクトモデル)を利用します。
- IMFTransform(MFT)はCOM(コンポーネントオブジェクトモデル)を利用します。
- IMFAttributesはCOM(コンポーネントオブジェクトモデル)を利用します。
- COMスマートポインタ(ComPtr/wil::com_ptr)はCOM(コンポーネントオブジェクトモデル)に対する本記事の推奨です。
- ActiveXはCOM(コンポーネントオブジェクトモデル)を前提とします。
- COM(コンポーネントオブジェクトモデル)はCLSID(Class ID)を利用します。
- COM(コンポーネントオブジェクトモデル)はWOW6432Nodeに保存されます。
- regsvr32はCOM(コンポーネントオブジェクトモデル)の実装を担います。
- Regasm.exeはCOM(コンポーネントオブジェクトモデル)の実装を担います。
- COM(コンポーネントオブジェクトモデル)はbitness一致要件に対する本記事の推奨です。
- PowerShellはCOM(コンポーネントオブジェクトモデル)を利用します。
- COM(コンポーネントオブジェクトモデル)はCOMアパートメントモデル(STA/MTA)を利用します。
- Visual Basic 6.0(VB6)はCOM(コンポーネントオブジェクトモデル)を利用します。
- COM(Component Object Model)はCOM(コンポーネントオブジェクトモデル)を前提とします。
- ホストオブジェクト公開(AddHostObjectToScript)はCOM(コンポーネントオブジェクトモデル)を利用します。
- ActiveXはCOM(コンポーネントオブジェクトモデル)を利用します。
- OLE/AutomationはCOM(コンポーネントオブジェクトモデル)を利用します。
- COM(コンポーネントオブジェクトモデル)はCLSID(Class ID)を利用します。
- COM(コンポーネントオブジェクトモデル)はCOMアパートメントモデル(STA/MTA)を利用します。
- regsvr32はCOM(コンポーネントオブジェクトモデル)を自動化します。
- Reg-Free COM(登録不要COM)はCOM(コンポーネントオブジェクトモデル)を利用します。
- VBA(Visual Basic for Applications)はCOM(コンポーネントオブジェクトモデル)を利用します。
- COM(コンポーネントオブジェクトモデル)はIUnknownを利用します。
- COM(コンポーネントオブジェクトモデル)はQueryInterfaceを利用します。
- COM(コンポーネントオブジェクトモデル)はCOMの参照カウント(AddRef/Release)を利用します。
- COM(コンポーネントオブジェクトモデル)はCLSID(Class ID)を利用します。
- COM(コンポーネントオブジェクトモデル)はIID(インターフェース識別子)を利用します。
- COM(コンポーネントオブジェクトモデル)はHRESULTを利用します。
- COM(コンポーネントオブジェクトモデル)はCOMのバイナリ互換性の実装を担います。
- COM(コンポーネントオブジェクトモデル)はCOMのバージョン共存の実装を担います。
- COM(コンポーネントオブジェクトモデル)はIn-proc COM(DLLサーバー)を利用します。
- COM(コンポーネントオブジェクトモデル)はCOM LocalServer(別プロセスCOMサーバー)を利用します。
- COM(コンポーネントオブジェクトモデル)はProxy/Stubを利用します。
- COM(コンポーネントオブジェクトモデル)はIDL(インターフェース定義言語)を利用します。
- ActiveXはCOM(コンポーネントオブジェクトモデル)を前提とします。
- 残す・包む・置き換える(段階移行方針)はCOM(コンポーネントオブジェクトモデル)に対する本記事の推奨です。
- 既存Windows装置ソフト資産はCOM(コンポーネントオブジェクトモデル)を利用します。
- MSI(Windows Installer)はCOM(コンポーネントオブジェクトモデル)を利用します。
- サーバーサイドOffice COM自動化はCOM(コンポーネントオブジェクトモデル)を利用します。
- COM(コンポーネントオブジェクトモデル)は32bit/64bitブリッジに対する本記事の推奨です。
- COM(コンポーネントオブジェクトモデル)をプロセス間通信(IPC)に用いることは推奨されません。
- COM(コンポーネントオブジェクトモデル)はWindowsの後方互換性を前提とします。
- COM(コンポーネントオブジェクトモデル)はbitness一致要件を前提とします。
- COM(コンポーネントオブジェクトモデル)はregsvr32で構成できます。
- シェル拡張(エクスプローラー拡張)はCOM(コンポーネントオブジェクトモデル)を利用します。
- AppNotification(Windows App SDK)はCOM(コンポーネントオブジェクトモデル)を前提とします。
この概念を扱う記事
- ActiveX / OCX を今どう扱うか - 残す・包む・置き換える判断表(言及)
- 32bitアプリから64bit DLLを呼ぶCOMブリッジ実例(言及)
- COM/OCX/ActiveX開発でハマる登録とbitnessの罠(言及)
- DLL・COMインターフェースの後方互換性 ── どの変更が呼び出し側を壊すのかの判断表(言及)
- .NET 8 DLLをVBAから型付きで使う方法 - COM公開とdscom TLB(言及)
- 技術ブログ開設のお知らせ - Windows / C# / COM 開発ブログを始めました(主要トピック)
- Media Foundation入門 - COM視点でAPIを理解する(主要トピック)
- Office 2024/Microsoft 365でActiveXが動かない原因と確認手順(言及)
- C#からWin32 APIを安全に呼ぶ ── P/Invoke実務ガイド(DllImport / LibraryImport / CsWin32)(言及)
- PowerShellからCOMと.NETを呼ぶ実践 ── スクリプトの届く範囲を一気に広げる(主要トピック)
- COM STA/MTA の基礎知識 - スレッドモデルとハングを避ける考え方(言及)
- VB6 / Access業務アプリの延命と移行 ── 残す・包む・置き換えるの判断表(言及)
- VB6アプリはいつまで動くのか ── ランタイムのサポート状況と現実的な.NET移行の進め方(言及)
- IEモードの次はWebView2でいいのか ── ActiveXが動かない制約と現実的な移行設計(言及)
- COM / ActiveX / OCX とは何か - 違いと関係をまとめて解説(主要トピック)
- Reg-Free COMとは - 登録不要でCOMを使う仕組み(言及)
- VBA とは何か - 制約、将来性、置き換えるべき場面と現実的な移行パターン(言及)
- COM とは何か - Windows COM の設計が今でも美しい理由(主要トピック)
- Windowsアプリ 外注・受託開発を依頼する前に整理したいこと(言及)
- Windowsアプリ配布方式の選び方 - MSI/MSIX/ClickOnce/xcopy/独自更新(言及)
- Windows業務アプリの印刷とPDF出力 ── System.Drawing.Printing / WPF / 帳票ライブラリの使い分け(言及)
- Windowsのプロセス間通信をどう選ぶか ── 名前付きパイプ / TCP / gRPC / 共有メモリ / COM 判断表(言及)
- 開発者の異常な愛情、または私は如何にして心配するのをやめてWindowsを愛するようになったか(主要トピック)
- Windowsアプリの1ファイル配布 - シングルバイナリとOS依存の限界(言及)
- Windowsアプリのタスクトレイ常駐とトースト通知 ── NotifyIconの落とし穴とAppNotificationの選び方(言及)
一次資料
このページはサイトの知識グラフ(_data/knowledge/)から自動生成されています。誤りの指摘はお問い合わせからお願いします。