知識マップ: ActiveX / OCX を今どう扱うか - 残す・包む・置き換える判断表

記事「ActiveX / OCX を今どう扱うか - 残す・包む・置き換える判断表」の主張を、概念と関係(エッジ)に分解した知識グラフの全体です。各関係には根拠・確認日・確度が付いています。

ActiveXは実務ではCOMベースのコントロールやその周辺資産を指す言葉として使われ、OCXはその実体を持つファイルである。in-procで動くOCXはホストプロセスとビット構成(32bit/64bit)を揃える必要があり、この制約を越えるにはCOM LocalServerのような別プロセス化でbitnessの壁を回避する。ブラウザ側ではMicrosoft Edge本体がActiveXを持たず、WebView2もActiveX依存やIE DOM前提のスクリプトをそのまま引き継げないため、IEモードが延命策として位置づけられる。包むための手段としては、AxHostとAximpによるWindows Formsホスト化、Reg-Free COMによるレジストリ登録なしの解決、regsvr32によるOCX登録があり、いずれもCLSID・ProgID・型ライブラリという識別子や型情報を前提にしている。

ActiveX/OCXを残す・包む・置き換える判断の知識マップActiveXとOCXがCOMを土台にすること、bitness不一致という制約と別プロセス化による回避、ブラウザ依存(Edge・IEモード・WebBrowser・WebView2)の非互換関係、包む手段(AxHost/Aximp/Reg-Free COM/LocalServer)がCLSIDやProgID、型ライブラリとどう結びつくかを示す図。利用する実装を担う前提とする前提とする軽減する利用する利用する実装を担う前提とする前提とする前提とする前提とする前提とする前提とする両立しない利用する利用する両立しないの後継前提とする前提とするで構成できる利用する前提とするActiveXOCXCOM(コンポーネントオブジェクトモデル)COMアパートメントモデル(STA/MTA)bitness一致要件COM LocalServer(別プロセスCOMサーバー)AxImp(ActiveX Control Importer)AxHostWindows FormsCLSID(Class ID)ProgID(Programmatic Identifier)Visual Basic 6.0(VB6)型ライブラリ(TLB)IEモードMicrosoft EdgeWebBrowserコントロールMicrosoft Edge WebView2Reg-Free COM(登録不要COM)regsvr32MFC(Microsoft Foundation Classes)WebView2 Runtime

概念間の関係(全24件)

図と同じ関係を文章でも列挙します。表示している文と機械可読な意味データ(RDFa)は同じ要素に載っています。確度が「確立した関係」のものは直接の関係として、「条件付きの関係」のものは成立条件つきの言明(rdf:Statement)として表現しています。

主要概念の定義

ActiveX
実務ではCOMベースのコントロールやその周辺資産をまとめて指す言葉として使われる技術群。特に.ocx形式のUIコントロールやIE/コンテナへ埋め込む部品を含むことが多い。
OCX
ActiveXコントロールの実体を持つ.ocx形式のファイル。in-procの形態でホストプロセスに読み込まれる。
COM LocalServer(別プロセスCOMサーバー)
COMサーバーをEXEとして別プロセスで動かす形態。bitnessの壁を越えたり、クラッシュを隔離したりできる。レジストリのCLSID配下のLocalServer32キーにEXEパスを登録する。
AxImp(ActiveX Control Importer)
.NET Framework付属のツールで、OCXからCOM型のランタイム呼び出し可能ラッパーと、AxHost派生のWindows Forms用ラッパーアセンブリを生成する。生成ファイル名はProgIDから決まる。
AxHost
Windows Forms上でActiveXコントロールをホストするための基底クラス。
ProgID(Programmatic Identifier)
CLSIDに付けた、人が読める文字列の名前。`Excel.Application`のような形でCLSIDに対応付けられる。
Visual Basic 6.0(VB6)
COMコンポーネントを型付きで呼び出せる、レガシーなVisual Basicの開発環境・言語。
IEモード
設定されたサイトに対してMicrosoft Edgeが IE系のエンジンを使い、ActiveXを含む一部のIE機能を動かすための互換レイヤー。延命策として位置づけられる。
Microsoft Edge
Chromiumベースのマイクロソフト製ブラウザー。本体はActiveXをサポートしない。
WebBrowserコントロール
WindowsアプリにIE系の描画エンジンを埋め込むための.NETのコントロール。IEの世界観を引きずる。
Microsoft Edge WebView2
Chromiumベースのランタイムを使ってWindowsアプリにWeb描画エンジンを埋め込む仕組み。WebBrowserコントロールの完全な差し替え部品ではない。
Reg-Free COM(登録不要COM)
レジストリ登録なしに、アプリ側のマニフェストに書いたCLSIDやProgIDなどの情報でCOMコンポーネントを解決する仕組み。
MFC(Microsoft Foundation Classes)
C++でWindowsデスクトップアプリやCOMサーバーを作るためのマイクロソフト製クラスライブラリ。

機械可読データ

このページはサイトの知識グラフ(_data/knowledge/)から自動生成されています。誤りの指摘はお問い合わせからお願いします。