Exemplo n.º 1
0
HRESULT CProvider_IWbemEventProvider :: ProvideEvents ( 

	IWbemObjectSink *a_Sink ,
	LONG a_Flags
)
{
	HRESULT t_Result = S_OK ;

	m_EventSink = a_Sink ;
	m_EventSink->AddRef () ;

	InternalAddRef () ;

	DWORD t_ThreadId = 0 ;
	m_ThreadHandle = CreateThread (

		NULL ,
		0 , 
		( LPTHREAD_START_ROUTINE ) ThreadExecutionFunction ,
		this ,
		0 , 
		& t_ThreadId 
	) ;

	if ( m_ThreadHandle == NULL )
	{
		InternalRelease () ;
	}

	return t_Result ;
}
BOOL CXTPDockingPaneTabbedContainer::OnCaptionButtonDown(CXTPDockingPaneCaptionButton* pButton)
{
	switch (pButton->GetID())
	{
	case XTP_IDS_DOCKINGPANE_MENU:
		if (m_pSelectedPane)
		{
			InternalAddRef();

			CXTPDockingPaneManager* pManager = GetDockingPaneManager();
			XTP_DOCKINGPANE_CLICK menu;

			menu.pContainer = this;
			menu.rcExclude = pButton->GetRect();
			ClientToScreen(&menu.rcExclude);

			menu.pt = GetExStyle() & WS_EX_LAYOUTRTL ? CPoint(menu.rcExclude.right, menu.rcExclude.bottom) : CPoint(menu.rcExclude.left, menu.rcExclude.bottom);
			menu.pPane = m_pSelectedPane;
			pButton->m_bPressed = TRUE;
			Invalidate(FALSE);

			pManager->NotifyOwner(XTP_DPN_CONTEXTMENU, (LPARAM)&menu);

			pButton->m_bPressed = FALSE;
			if (m_hWnd) Invalidate(FALSE);

			InternalRelease();
		}
		return TRUE;

	}
	return FALSE;
}
HRESULT CTedTestSink::InitAudioStream()
{
    HRESULT hr = S_OK;

    InternalAddRef();
    /*IMFMediaSink* pMediaSink;
    InternalQueryInterface(this, CTedTestSink::_GetEntries(), IID_IMFMediaSink, (void**) &pMediaSink);*/
    
    CComPtr<IMFMediaType> spAudioType;
    IFC( MFCreateMediaType(&spAudioType) );
    IFC( spAudioType->SetGUID(MF_MT_MAJOR_TYPE, MFMediaType_Audio) );
    IFC( spAudioType->SetGUID(MF_MT_SUBTYPE, MFAudioFormat_Float) );

    CComObject<CTedTestMediaTypeHandler>* pAudioTypeHandler = NULL;
    IFC( CComObject<CTedTestMediaTypeHandler>::CreateInstance(&pAudioTypeHandler) );
    pAudioTypeHandler->AddRef();
    pAudioTypeHandler->SetMajorType(MFMediaType_Audio);
    pAudioTypeHandler->AddAvailableType(spAudioType);

    CComObject<CTedTestStreamSink>* pAudioStreamSink = NULL;
    IFC( CComObject<CTedTestStreamSink>::CreateInstance(&pAudioStreamSink) );
    pAudioStreamSink->AddRef();
    m_spAudioStreamSink = pAudioStreamSink;
    //IFC( pAudioStreamSink->Init(pMediaSink, pAudioTypeHandler, 0) );
    IFC( pAudioStreamSink->Init(this, pAudioTypeHandler, 0) );
    pAudioTypeHandler->Release();
    pAudioStreamSink->Release();

    //pMediaSink->Release();
    InternalRelease();
Cleanup:
    return hr;
}
Exemplo n.º 4
0
        SqlResult Connection::MakeRequestHandshake()
        {
            HandshakeRequest req(PROTOCOL_VERSION);
            HandshakeResponse rsp;

            try
            {
                SyncMessage(req, rsp);
            }
            catch (const IgniteError& err)
            {
                AddStatusRecord(SQL_STATE_HYT01_CONNECTIOIN_TIMEOUT, err.GetText());

                return SQL_RESULT_ERROR;
            }

            if (rsp.GetStatus() != RESPONSE_STATUS_SUCCESS)
            {
                LOG_MSG("Error: %s\n", rsp.GetError().c_str());

                AddStatusRecord(SQL_STATE_08001_CANNOT_CONNECT, rsp.GetError());

                InternalRelease();

                return SQL_RESULT_ERROR;
            }

            if (!rsp.IsAccepted())
            {
                LOG_MSG("Hanshake message has been rejected.\n");

                std::stringstream constructor;

                constructor << "Node rejected handshake message. "
                    << "Current node Apache Ignite version: " << rsp.CurrentVer() << ", "
                    << "node protocol version introduced in version: " << rsp.ProtoVerSince() << ", "
                    << "driver protocol version introduced in version: " << PROTOCOL_VERSION_SINCE << ".";

                AddStatusRecord(SQL_STATE_08001_CANNOT_CONNECT, constructor.str());

                InternalRelease();

                return SQL_RESULT_ERROR;
            }

            return SQL_RESULT_SUCCESS;
        }
Exemplo n.º 5
0
DWORD CCmdTarget::ExternalRelease()
{
	// delegate to controlling unknown if aggregated
	if (m_pOuterUnknown != NULL)
		return m_pOuterUnknown->Release();

	return InternalRelease();
}
Exemplo n.º 6
0
void CXTPReportRecord::TreeRelease()
{
	if (HasChildren())
	{
		for (int nChild = 0; nChild < GetChilds()->GetCount(); nChild++)
		{
			GetChilds()->GetAt(nChild)->TreeRelease();
		}
	}
	InternalRelease();
}
Exemplo n.º 7
0
int OcxObject::ExternalRelease()
{
	if(outer_unknown) {
		int res = outer_unknown->Release();
#if LOG_ADDREFS
		// note: this might have been destructed by this time
		OCXLOG("OcxObject::ExternalRelease -> outer(" << FormatIntHex(outer_unknown) << ") -> " << res);
#endif
		return res;
	}
	return InternalRelease();
}
Exemplo n.º 8
0
void COleLinkingDoc::UpdateVisibleLock(BOOL bVisible, BOOL bRemoveRefs)
{
	ASSERT_VALID(this);

	if (bVisible != m_bVisibleLock)
	{
		InternalAddRef();   // make sure document is stable
		m_bVisibleLock = bVisible;
		LockExternal(bVisible, bRemoveRefs);
		InternalRelease();  // may Release the document!
	}
}
Exemplo n.º 9
0
	STDMETHOD_(ULONG, Release)()
	{
		ULONG l = InternalRelease();
		if (l == 0) {
			if(SUCCEEDED(m_pool.Deactivate(this))) {
				FinalRelease();
			}
			else
				delete this;
		}
		return l;
	}
void CXTPPropertyGridItemFont::OnInplaceButtonDown(CXTPPropertyGridInplaceButton* pButton)
{
	if (m_pGrid->SendNotifyMessage(XTP_PGN_INPLACEBUTTONDOWN, (LPARAM)pButton) == TRUE)
		return;

	if (!OnRequestEdit())
		return;

	InternalAddRef();

	CFontDialog dlg(&m_lfValue, CF_EFFECTS | CF_SCREENFONTS, NULL, m_pGrid);

	if (m_clrValue == (COLORREF)-1)
	{
		dlg.m_cf.lpfnHook = FontDlgProc;
	}
	else
	{
		dlg.m_cf.rgbColors = m_clrValue;
	}

	if (dlg.DoModal() == IDOK)
	{
		LOGFONT lf;
		dlg.GetCurrentFont(&lf);

		CString strValue = FontToString(lf);

		if (OnAfterEdit(strValue))
		{
			SetFont(lf);

			if (m_clrValue != (COLORREF)-1)
				m_clrValue = dlg.GetColor();

			OnValueChanged(strValue);
			SAFE_INVALIDATE(m_pGrid);
		}
	}
	else
	{
		OnCancelEdit();
	}

	InternalRelease();
}
Exemplo n.º 11
0
STDMETHODIMP_(ULONG) CProvider_IWbemEventProvider :: Release ( void )
{
	LONG t_Reference ;
	if ( ( t_Reference = InterlockedDecrement ( & m_ReferenceCount ) ) == 0 )
	{
		if ( m_ThreadTerminate )
		{
			SetEvent ( m_ThreadTerminate ) ;
		}

		if ( m_ThreadHandle )
		{
			WaitForSingleObject ( m_ThreadHandle , INFINITE ) ;
			CloseHandle ( m_ThreadHandle ) ;
		}

		InternalRelease () ;
	}

	return t_Reference ;
}
Exemplo n.º 12
0
STDMETHODIMP_(ULONG) GvField::Release()
{ 
	 return InternalRelease();
}
Exemplo n.º 13
0
DWORD CComObjectRootBase::ExternalRelease() {
	if (m_pUnkOuter)
		return m_pUnkOuter->Release();
	return InternalRelease();
}
void CXTPDockingPaneSidePanel::DeletePane()
{
	InternalRelease();
}
Exemplo n.º 15
0
        SqlResult Connection::MakeRequestHandshake()
        {
            bool distributedJoins = false;
            bool enforceJoinOrder = false;
            int64_t protocolVersion = 0;

            try
            {
                distributedJoins = config.IsDistributedJoins();
                enforceJoinOrder = config.IsEnforceJoinOrder();
                protocolVersion = config.GetProtocolVersion().GetIntValue();
            }
            catch (const IgniteError& err)
            {
                AddStatusRecord(SQL_STATE_01S00_INVALID_CONNECTION_STRING_ATTRIBUTE, err.GetText());

                return SQL_RESULT_ERROR;
            }

            HandshakeRequest req(protocolVersion, distributedJoins, enforceJoinOrder);
            HandshakeResponse rsp;

            try
            {
                SyncMessage(req, rsp);
            }
            catch (const IgniteError& err)
            {
                AddStatusRecord(SQL_STATE_HYT01_CONNECTIOIN_TIMEOUT, err.GetText());

                return SQL_RESULT_ERROR;
            }

            if (rsp.GetStatus() != RESPONSE_STATUS_SUCCESS)
            {
                LOG_MSG("Error: %s\n", rsp.GetError().c_str());

                AddStatusRecord(SQL_STATE_08001_CANNOT_CONNECT, rsp.GetError());

                InternalRelease();

                return SQL_RESULT_ERROR;
            }

            if (!rsp.IsAccepted())
            {
                LOG_MSG("Hanshake message has been rejected.\n");

                std::stringstream constructor;

                constructor << "Node rejected handshake message. "
                    << "Current node Apache Ignite version: " << rsp.CurrentVer() << ", "
                    << "node protocol version introduced in version: " << rsp.ProtoVerSince() << ", "
                    << "driver protocol version introduced in version: " << config.GetProtocolVersion().ToString() << ".";

                AddStatusRecord(SQL_STATE_08001_CANNOT_CONNECT, constructor.str());

                InternalRelease();

                return SQL_RESULT_ERROR;
            }

            return SQL_RESULT_SUCCESS;
        }
Exemplo n.º 16
0
 void Connection::Release()
 {
     IGNITE_ODBC_API_CALL(InternalRelease());
 }
unsigned int PropertyBag::Release(
   void ) const
{
   return InternalRelease();
}
void CXTPDockingPaneSplitterContainer::DeletePane()
{
	InternalRelease();
}
void CXTPDockingPaneTabbedContainer::DeletePane()
{
	InternalRelease();
}
//+---------------------------------------------------------------------------
//
//  function:   ~_CFaxAccountNotify
//
//  Synopsis:   _CFaxAccountNotify destructor 
//
//  Arguments:  none
//
//  Returns:    void
//
//----------------------------------------------------------------------------
_CFaxAccountNotify::~_CFaxAccountNotify()
{
    InternalRelease(); // defined in CComObjectRootEx
}