⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cmpnt.h

📁 inside com的源代码
💻 H
字号:
//
// Cmpnt.cpp - Component
//
#include "Iface.h"
#include "CUnknown.h" // Base class for IUnknown

///////////////////////////////////////////////////////////
//
// Component A
//
class CA : public CUnknown,
           public IX
{
public:	
	// Creation
	static HRESULT CreateInstance(IUnknown* pUnknownOuter,
	                              CUnknown** ppNewComponent ) ;

private:
	// Declare the delegating IUnknown.
	DECLARE_IUNKNOWN

	// Nondelegating IUnknown
	virtual HRESULT __stdcall 
		NondelegatingQueryInterface( const IID& iid, void** ppv) ;
	
	// Interface IX
	virtual HRESULT __stdcall Tick(int delta) ;
	virtual HRESULT __stdcall SetStartCount(long NewCount) ;
	virtual HRESULT __stdcall GetCurrentCount(long* pCurrentCount) ;
	virtual HRESULT __stdcall Left() ;
	virtual HRESULT __stdcall Right() ;
	virtual HRESULT __stdcall InRightHand(BOOL* pbool) ;

   // Constructor
   CA(IUnknown* pUnknownOuter) ;

	// Destructor
	~CA() ;

	// Create aggregates.
	virtual HRESULT Init() ;

	// Release aggregates.
	virtual void FinalRelease() ;

	// Count
	long m_count ;

	// Current hand
	BOOL m_bRightHand ;

	// Mutex to protect count
	HANDLE m_hCountMutex ;

	// Mutex to protect hand
	HANDLE m_hHandMutex ;

	// Handle to the free threaded marshaller
	IUnknown* m_pIUnknownFreeThreadedMarshaler ;
} ;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -