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

📄 csdemoclientmodule.h

📁 RTX Client&Server示例
💻 H
字号:
#pragma once

// CsDemoClientModule.h : header file
//

/////////////////////////////////////////////////////////////////////////////
// CCsDemoClientModule command target

class CCsDemoClientModule : public CCmdTarget
{
	DECLARE_DYNCREATE(CCsDemoClientModule)
	DECLARE_EVENT_RECEIVER(CCsDemoClientModule)

	CCsDemoClientModule();           // protected constructor used by dynamic creation

// Overrides
	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CCsDemoClientModule)
	public:
	virtual void OnFinalRelease();
	//}}AFX_VIRTUAL

// Implementation
protected:
	virtual ~CCsDemoClientModule();

	// Generated message map functions
	//{{AFX_MSG(CCsDemoClientModule)
		// NOTE - the ClassWizard will add and remove member functions here.
	//}}AFX_MSG
	BEGIN_DUAL_INTERFACE_PART(RTXCModule, IRTXCPlugin)
		STDMETHOD(get_Identifier)(BSTR *pVal)
		{
			METHOD_PROLOGUE(CCsDemoClientModule, RTXCModule)
				
			return pThis->get_Identifier(pVal);
		}

		STDMETHOD(get_Name)(BSTR *pVal)
		{
			METHOD_PROLOGUE(CCsDemoClientModule, RTXCModule)
				
			return pThis->get_Name(pVal);
		}

		STDMETHOD(get_ModuleSite)(IDispatch* *pVal)
		{
			METHOD_PROLOGUE(CCsDemoClientModule, RTXCModule)
		
			return pThis->get_ModuleSite(pVal);
		}

		STDMETHOD(OnLoad)(IDispatch* RTXCModuleSite)
		{
			METHOD_PROLOGUE(CCsDemoClientModule, RTXCModule)
			
			return pThis->OnLoad(RTXCModuleSite);
		}

		STDMETHOD(OnAccountChange)()
		{
			METHOD_PROLOGUE(CCsDemoClientModule, RTXCModule)
				
			return pThis->OnAccountChange();
		}
		
		STDMETHOD(OnInvoke)(VARIANT Receiver, VARIANT Parameter, VARIANT Extra, VARIANT* Result)
		{
			METHOD_PROLOGUE(CCsDemoClientModule, RTXCModule)
				
			return pThis->OnInvoke(Receiver, Parameter, Extra, Result);
		}
		
		STDMETHOD(OnUnload)(enum RTXC_MODULE_UNLOAD_REASON Reason)
		{
			METHOD_PROLOGUE(CCsDemoClientModule, RTXCModule)
				
			return pThis->OnUnload(Reason);
		}

		STDMETHOD(get_Info)(enum RTXC_PLUGIN_INFO_FIELD Field, BSTR *pVal)
		{
			METHOD_PROLOGUE(CCsDemoClientModule, RTXCModule)

			return pThis->get_Info(Field, pVal);
		}
	END_DUAL_INTERFACE_PART(RTXCModule)	
	
	DECLARE_MESSAGE_MAP()
	DECLARE_OLECREATE(CCsDemoClientModule)

	// Generated OLE dispatch map functions
	//{{AFX_DISPATCH(CCsDemoClientModule)
		// NOTE - the ClassWizard will add and remove member functions here.
	//}}AFX_DISPATCH
	DECLARE_DISPATCH_MAP()
	DECLARE_INTERFACE_MAP()
private:
	IRTXCRootPtr m_ptrRoot;
	IRTXCModuleSitePtr m_ptrModuleSite;

	CRTXCEventSinkRoot m_RootEventSink;

	void OnLoginResult(RTXC_LOGIN_RESULT Result);

	CRTXCEventSinkModuleSite m_ModuleSiteEventSink;

	void OnDataReceived(LPCTSTR Key);
	void OnViewData(LPCTSTR Key);
	void OnSendDataResult(RTXC_MODULE_SEND_DATA_RESULT Result, const VARIANT* Extra);

	HRESULT get_Identifier(BSTR* pVal);
	HRESULT get_Name(BSTR* pVal);

	HRESULT get_ModuleSite(IDispatch* *pVal);

	HRESULT OnLoad(IDispatch* RTXCModuleSite);
	
	HRESULT OnAccountChange();

	HRESULT OnInvoke(VARIANT Receiver, VARIANT Parameter, VARIANT Extra, VARIANT* Result);
	
	HRESULT OnUnload(enum RTXC_MODULE_UNLOAD_REASON Reason);

	HRESULT get_Info(enum RTXC_PLUGIN_INFO_FIELD Field, BSTR *pVal);
};

/////////////////////////////////////////////////////////////////////////////

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

⌨️ 快捷键说明

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