MCPcopy Create free account
hub / github.com/cinience/RedisStudio / ReleaseControl

Method ReleaseControl

DuiLib/Control/UIActiveX.cpp:1036–1057  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1034}
1035
1036void CActiveXUI::ReleaseControl()
1037{
1038 m_hwndHost = NULL;
1039 if( m_pUnk != NULL ) {
1040 IObjectWithSite* pSite = NULL;
1041 m_pUnk->QueryInterface(IID_IObjectWithSite, (LPVOID*) &pSite);
1042 if( pSite != NULL ) {
1043 pSite->SetSite(NULL);
1044 pSite->Release();
1045 }
1046 m_pUnk->Close(OLECLOSE_NOSAVE);
1047 m_pUnk->SetClientSite(NULL);
1048 m_pUnk->Release();
1049 m_pUnk = NULL;
1050 }
1051 if( m_pControl != NULL ) {
1052 m_pControl->m_pOwner = NULL;
1053 m_pControl->Release();
1054 m_pControl = NULL;
1055 }
1056 m_pManager->RemoveMessageFilter(this);
1057}
1058
1059typedef HRESULT (__stdcall *DllGetClassObjectFunc)(REFCLSID rclsid, REFIID riid, LPVOID* ppv);
1060

Callers

nothing calls this directly

Calls 5

SetSiteMethod · 0.80
RemoveMessageFilterMethod · 0.80
QueryInterfaceMethod · 0.45
ReleaseMethod · 0.45
CloseMethod · 0.45

Tested by

no test coverage detected