IChanges* Changes::GetComObject() { IChanges* result; InternalQueryInterface(&DIID_IChanges, (void**)&result); return result; }
LPOLEITEMCONTAINER COleLinkingDoc::GetContainer() { ASSERT_VALID(this); // get the IOleItemContainer interface via QueryInterface LPOLEITEMCONTAINER lpContainer; InternalQueryInterface(&IID_IOleItemContainer, (LPLP)&lpContainer); return lpContainer; }
STDMETHODIMP DynamicDisplayItem::QueryInterface( REFIID theIID, void ** theOut ) { HRESULT aRes = InternalQueryInterface(theIID, this, theOut); if ( FAILED(aRes) ) return aRes; AddRef(); return S_OK; }
HRESULT OcxObject::ExternalQueryInterface(const GUID& iid, void **ppv) { if(outer_unknown) { HRESULT hr = outer_unknown->QueryInterface(iid, ppv); #if LOG_QUERIES >= 2 OCXLOG("OcxObject::ExternalQueryInterface(" << GetInterfaceName(iid) << ") -> outer(" << FormatIntHex(outer_unknown) << ") -> " << FormatIntHex(hr)); #endif return hr; } return InternalQueryInterface(iid, ppv); }
/** * Function name CImplMsgSink::UnregisterMsgSource * Description * @param LPUNKNOWN lpUnkMsgSource * @param DWORD dwCookie * @return HRESULT * @exception * @see CMsgWnd */ HRESULT CImplMsgSink::UnregisterMsgSource(LPUNKNOWN lpUnkMsgSource, DWORD dwCookie) { ASSERT(lpUnkMsgSource != NULL); LPUNKNOWN pUnkSink; BOOL bResult; HRESULT hr = InternalQueryInterface((IID*)&IID_IUnknown, (void**)&pUnkSink); if(FAILED(hr)) { return(hr); } bResult = AfxConnectionUnadvise(lpUnkMsgSource, IID__ICEMessageEvent, pUnkSink, TRUE, dwCookie); pUnkSink->Release(); return(bResult ? S_OK : E_FAIL); }
HRESULT CComObjectRootBase::ExternalQueryInterface(REFIID iid, LPVOID *ppvObj) { if (m_pUnkOuter) return m_pUnkOuter->QueryInterface(iid, ppvObj); return InternalQueryInterface(iid, ppvObj); }
HRESULT CComObjectRootBase::ExternalQueryInterface(const _ATL_INTMAP_ENTRY *pEntries, REFIID iid, LPVOID *ppvObj) { return InternalQueryInterface(this, pEntries, iid, ppvObj); }