CWnd::GetControlUnknown
未知の OLE コントロールを指すポインターを取得するためには、この関数を呼び出します。
LPUNKNOWN GetControlUnknown( );
戻り値
CWnd オブジェクトが持っている OLE コントロールの IUnknown インターフェイスへのポインター。 CWnd オブジェクトが OLE コントロール持たない場合は NULL を返します。
解説
この IUnknown ポインターは解放しないでください。 通常、コントロールの特定のインターフェイスを取得するためにこの IUnknown ポインターを使用します。
GetControlUnknown が返すインターフェイスへのポインターは、参照カウントされません。 以前に IUnknown::AddRef を呼び出したことがない場合は、IUnknown::Release を呼び出さないでください。
使用例
// The following code fragment is taken from CMyDlg::OnInitDialog
// CMyDlg is a CDialog-derived class.
// IDC_MSACALCTRL1 is the ID of the Calendar control OCX embedded
// on this dialog
CWnd *pWndCal = GetDlgItem(IDC_MSACALCTRL1);
// Use the IUnknown of the control
LPUNKNOWN pUnk = pWndCal->GetControlUnknown();
// From there get the IDispatch interface of control
LPDISPATCH pDisp = NULL;
pUnk->QueryInterface(IID_IDispatch, (LPVOID*)&pDisp);
// use IDispatch method to invoke the control's functionality
必要条件
**ヘッダー:**afxwin.h