HPSocket的dll使用

OPT_lezhehao 2016-04-12 11:54:48
我准备使用HPSocket.dll进行测试创建服务,根据HPSocket头文件中的
--------------------------------------------------------------------------------------
方法一:
0. 应用程序包含 SocketInterface.h 和 HPSocket.h 头文件
1. 调用 HP_Create_Xxx() 函数创建 HPSocket 对象
2. 使用完毕后调用 HP_Destroy_Xxx() 函数销毁 HPSocket 对象

方法二:
--------------------------------------------------------------------------------------
0. 应用程序包含 SocketInterface.h 和 HPSocket.h 头文件
1. 创建 CXxxPtr 智能指针,通过智能指针使用 HPSocket 对象

新建 ITcpServer *m_tcpServer;

BOOL CTcpServer::Start(USHORT usPort)
{
CString localIp = GetLocalIP();//获取本机IP

m_tcpListen = NULL;
m_tcpServer = HP_Create_TcpServer(m_tcpListen);
m_tcpServer->Start(localIp, usPort);
}


那个m_tcpListen需要怎么初始化,HPSocket.h中没有看到相关的初始化。是不是还要引用其他的文件,我只想用dll,引入了
HPSocket.h 和 SocketInterface.h,还有HPSocket.dll和HPSocket.lib放入到工程。希望各位大虾指点下。
...全文
819 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
OPT_lezhehao 2016-04-12
  • 打赏
  • 举报
回复
找到了,TestEcho-PFM里面有详细的介绍
*** v3.1.1 更新 *** > 增加导出纯 C 函数的动态链接库 HPSocket4C.dll: ----------------- 1.增加代码文件 HPSocket4C.h 和 HPSocket4C.cpp,用于创建 HPSocket4C.dll 2.导出纯 C 函数,让其它语言(如:C/C#/Delphi 等)能方便地使用 HPSocket 3.HPSocket4C.dll 使用方法 方法一: ------------------------------------------------------------------------------ (0) (C/C++ 程序)包含 HPSocket4C.h 头文件 (1) 调用 ::Create_HP_XxxListener() 函数创建监听器对象 (2) 调用 ::Create_HP_Xxx(pListener) 函数创建 HPSocket 对象 (3) 调用 ::HP_Set_FN_Xxx_OnYyy(pListener, ...) 函数设置监听器的回调函数 (4) 调用相关导出函数操作 HPSocket 对象 (5) ...... ...... (6) 调用 ::Destroy_HP_Xxx(pSocket) 函数销毁 HPSocket 对象 (7) 调用 ::Destroy_HP_XxxListener(pListener) 函数销毁监听器对象 方法二: ------------------------------------------------------------------------------ (1) 应用程序把需要用到的导出函数封装到特定语言的包装类中 (2) 通过包装类封装后,以面向对象的方式使用 HPSocket 4.动态链接库发行版本 (1) x86/HPSocket4C.dll - (32位/MBCS/Release) (2) x86/HPSocket4C_D.dll - (32位/MBCS/DeBug) (3) x86/HPSocket4C_U.dll - (32位/UNICODE/Release) (4) x86/HPSocket4C_UD.dll - (32位/UNICODE/DeBug) (5) x64/HPSocket4C.dll - (64位/MBCS/Release) (6) x64/HPSocket4C_D.dll - (64位/MBCS/DeBug) (7) x64/HPSocket4C_U.dll - (64位/UNICODE/Release) (8) x64/HPSocket4C_UD.dll - (64位/UNICODE/DeBug) > 全面启用 Buffer Pool 缓存机制:
========================================================================================== v3.0.2 更新: ========================================================================================== > 把 HP-Socket 编译为动态链接库: ----------------- 1、应用程序可以通过导入源代码或动态链接库方式使用 HP-Socket 2、动态链接库使用方法 方法一: ----------------------------------------------------------------------- (0) 应用程序包含 SocketInterface.h 和 HPSocket.h 头文件 (1) 调用 HP_Create_Xxx() 函数创建 HPSocket 对象 (2) 使用完毕后调用 HP_Destroy_Xxx() 函数销毁 HPSocket 对象 方法二: ----------------------------------------------------------------------- (0) 应用程序包含 SocketInterface.h 和 HPSocket.h 头文件 (1) 创建 CXxxWrapper 包装器,通过包装器智能指针使用 HPSocket 对象 3、动态链接库发行版本 (1) Bin/x86/HPSocket.dll - (32位/MBCS/Release) (2) Bin/x86/HPSocket_D.dll - (32位/MBCS/DeBug) (3) Bin/x86/HPSocket_U.dll - (32位/UNICODE/Release) (4) Bin/x86/HPSocket_UD.dll - (32位/UNICODE/DeBug) (5) Bin/x64/HPSocket.dll - (64位/MBCS/Release) (6) Bin/x64/HPSocket_D.dll - (64位/MBCS/DeBug) (7) Bin/x64/HPSocket_U.dll - (64位/UNICODE/Release) (8) Bin/x64/HPSocket_UD.dll - (64位/UNICODE/DeBug) > 其它更新: ----------------- 1、把组件接口以及监听器接口的声明移到 SocketInterface.h 2、IServer 增加接口方法 GetConnectionCount()/GetConnectPeriod() 分别获取当前连接数和某个连接的时长 3、IServer 接口方法 GetListenAddress()/GetClientAddress() 的 CString& 参数改为 LPTSTR 4、IClient 接口方法 GetLocalAddress() 的 CString& 参数改为 LPTSTR 5、SocketHelper.h 中所有全局函数的 CString& 参数均改为 LPTSTR 6、示例工程 TestEcho-Pull 和 TestEcho-PFM 改为用动态链接库方式使用 HP-Socket > 升级说明: ----------------- 1、使用 HP-Socket v3.0.1 的应用程序可以安全升级到 HP-Socket v3.0.2 2、由于某些接口方法的参数作了调整,因此请参考测试工程作相应修改 3、如果工程想通过动态链接库方式使用 HP-Socket,请参考 TestEcho-Pull 或 TestEcho-PFM 示例工程

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧