CWnd::GetControlUnknown
Chamar essa função de membro para recuperar um ponteiro para um controlador do OLE não.
LPUNKNOWN GetControlUnknown( );
Valor de retorno
Um ponteiro para a interface de IUnknown controlador do OLE representado por esse objeto de CWnd . Se este objeto não representa um controlador do OLE, o valor de retorno é NULO.
Comentários
Você não deve liberar esse ponteiro de IUnknown . Normalmente, você usar-se-ia para obter uma interface específica do controle.
O ponteiro de interface retornado por GetControlUnknown de não é a contagem. Não chamar IUnknown::Release no ponteiro a menos que você chamar anteriormente IUnknown::AddRef em ele.
Exemplo
// 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
Cabeçalho: afxwin.h