调用WSACleanup()报内存不可读,帮忙看看。

lemon_wei 2005-12-07 11:10:32
写了个com,一个ITcpServer接口,一个ITcpClient接口.
两个接口都分另调用了WSAStartup()和WSACleanup();用两个程序测试com时,
发现必须按相同的顺序调用这个函数,假如 先调用ITcpServer 选调用 WSAStartup(),
那么程序退出时ITcpServer 必须先调用 WSACleanup(); 不然就报内存不能读的错误。
但是如果两者之间没能建立socket连接时也不会有这种问题,一但建立连接才会有这种错误,
大家帮忙看看。
...全文
90 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
lemon_wei 2005-12-08
  • 打赏
  • 举报
回复
搞定,有个地方资源没释放,导致WSACleanup()报错,释放了就好了。
lemon_wei 2005-12-08
  • 打赏
  • 举报
回复
不对,在VC下也有这个问题,更郁闷!
lemon_wei 2005-12-08
  • 打赏
  • 举报
回复
成对调用没得话说,在VC下测试没得问题,用delphi测试有这种问题,想用VB测一下,但是不会,郁闷!
oyljerry 2005-12-07
  • 打赏
  • 举报
回复
要成对调用
lifengice0706 2005-12-07
  • 打赏
  • 举报
回复
没见过这种现象,但成对调用是正理!
如果不是程序别的地方的问题,就得找ms问了:)

我猜在连接成功后,负责通信的内核为一个连接维护的信息,远不止一个socket句柄而已,所以会出现类似错误。
freemme 2005-12-07
  • 打赏
  • 举报
回复
有没有内存分配失败,或者内存泄漏的问题
hjunxu 2005-12-07
  • 打赏
  • 举报
回复
本来就要求这两个函数要成对调用的啊。

不过出错倒是没见过。
lemon_wei 2005-12-07
  • 打赏
  • 举报
回复
up

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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