// 下列 ifdef 块是创建使从 DLL 导出更简单的
// 宏的标准方法。此 DLL 中的所有文件都是用命令行上定义的 WEBSOCKETSERVER_EXPORTS
// 符号编译的。在使用此 DLL 的
// 任何其他项目上不应定义此符号。这样,源文件中包含此文件的任何其他项目都会将
// WEBSOCKETSERVER_API 函数视为是从 DLL 导入的,而此 DLL 则将用此宏定义的
// 符号视为是被导出的。
// By Azerl Z
#pragma once
#ifdef WEBSOCKETSERVER_EXPORTS
#define WEBSOCKETSERVER_API __declspec(dllexport)
#else
#define WEBSOCKETSERVER_API __declspec(dllimport)
#endif
class WEBSOCKETSERVER_API IOnWebSocket
{
public:
virtual void OnConnect(unsigned int nSockInfo) {};
virtual void OnDisconnect(unsigned int nSockInfo, const void* pMgrTag) {};
virtual void OnRecvData(const void* pMgrTag, const unsigned char* pData, int nRecvLen) {};
};
// 此类是从 websocketServer.dll 导出的
class WEBSOCKETSERVER_API IWebsocketServer
{
public:
virtual int SetOnWebSocket(IOnWebSocket* pOnWebSocket) = 0;
virtual int StartServer(unsigned short nPort) = 0;
virtual int StopServer() = 0;
virtual int SetSockMgr(unsigned int nSockInfo, const void* pMgrTag) = 0;
virtual int SendData(unsigned int nSockInfo, const unsigned char* pData, int nLen) = 0;
virtual int DisconnectClient(unsigned int nSockInfo) = 0;
};
WEBSOCKETSERVER_API IWebsocketServer* GetNewWebsocket();
//extern WEBSOCKETSERVER_API int nwebsocketServer;
//WEBSOCKETSERVER_API int fnwebsocketServer(void);
- 1
- 2
- 3
前往页