Compartilhar via


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

Consulte também

Referência

CWnd Class

Gráfico da hierarquia

IUnknown::Release

IUnknown::QueryInterface