CWnd::GetControlUnknown
Llame a esta función miembro para recuperar un puntero a un control OLE desconocido.
LPUNKNOWN GetControlUnknown( );
Valor devuelto
Un puntero a la interfaz de IUnknown de controles activex representado por este objeto de CWnd . Si este objeto no representa un control OLE, el valor devuelto es NULL.
Comentarios
No debe liberar este puntero de IUnknown . Normalmente, utilizaría para obtener una interfaz específica del control.
El puntero de interfaz devuelto por GetControlUnknown referencia- no se cuenta. No llame a IUnknown::Release en el puntero a menos que haya llamado previamente IUnknown::AddRef en él.
Ejemplo
// 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
Requisitos
encabezado: afxwin.h