CWnd::GetControlUnknown
Эта функция-член вызывается с целью извлечения указатель к неизвестному элементу управления OLE.
LPUNKNOWN GetControlUnknown( );
Возвращаемое значение
Указатель на интерфейс OLE IUnknown элемента управления, представленного этим объектом CWnd. Если этот объект не представляет элемент OLE, то возвращаемое значение NULL.
Заметки
Не следует освободить этот указатель IUnknown. Обычно используются, чтобы получить определенный интерфейс элемента управления.
Указатель интерфейса, возвращаемый GetControlUnknown ссылка- не учитывается. Не вызывайте IUnknown::Release указателя, если ранее не вызван IUnknown::AddRef.
Пример
// 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
Требования
Header: afxwin.h