コントロールへのインターフェイス ポインタはどのように取得しますか?

更新 : 2007 年 11 月

ホスト ウィンドウのハンドルだけを指定して AtlAxGetControl を呼び出すと、ホストされるコントロールの IUnknown インターフェイス ポインタを取得できます。このポインタに、そのコントロールによってサポートされるインターフェイスを照会できます。

コントロールのホスト ウィンドウのコントロール ID があり、親ウィンドウの CWindow 派生ラッパーがある場合 (たとえば、CAxDialogImpl クラスまたは CComCompositeControl クラスを使用している場合) は、CWindow::GetDlgControl を呼び出すことによって、ActiveX コントロールのインターフェイスを取得できます。

CAxWindow オブジェクトがある場合は、CAxWindow::QueryControl を呼び出すことによって、ActiveX コントロールのインターフェイスを取得できます。

参照

概念

ATL コントロール コンテインメント : Q & A 集