C#调用C++ dll WSACleanup怎么调用啊

baidu_30090697 2015-08-06 03:14:44
我是这样写的
[DllImport("ws2_32.dll")]
public static extern int WSACleanup();
结束时调用可失败,返回-1,哪里错了呢
...全文
160 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
baidu_30090697 2015-08-07
  • 打赏
  • 举报
回复
谢各位了,已经解决了,WSACleanup()不需要参数的
_lee_chong 2015-08-07
  • 打赏
  • 举报
回复
引用 5 楼 xian_wwq 的回复:
[quote=引用 楼主 baidu_30090697 的回复:] 我是这样写的 [DllImport("ws2_32.dll")] public static extern int WSACleanup(); 结束时调用可失败,返回-1,哪里错了呢
在什么情况下调用的WSACleanup呢? 如果没有调用WSAStartup,调用WSACleanup也只能返回-1. [/quote] WSACleanup的官方文档上写的清清楚楚呢,估计楼主都没去看呢;
xian_wwq 2015-08-07
  • 打赏
  • 举报
回复
引用 楼主 baidu_30090697 的回复:
我是这样写的 [DllImport("ws2_32.dll")] public static extern int WSACleanup(); 结束时调用可失败,返回-1,哪里错了呢
在什么情况下调用的WSACleanup呢? 如果没有调用WSAStartup,调用WSACleanup也只能返回-1.
叶殇花葬 2015-08-06
  • 打赏
  • 举报
回复
WSACleanup()需要有参数
_lee_chong 2015-08-06
  • 打赏
  • 举报
回复
当然,函数调用肯定看文档, .net函数看msdn中.net类库 win32api 先百度出函数原型,如果有参数或返回值的疑问,再去msdn查参数及返回值详情 你这问题看文档一下就猜到原因调用异常,要再WSAGetLastError获取异常信息,来论坛问这种问题浪费时间
baidu_30090697 2015-08-06
  • 打赏
  • 举报
回复
你这回答太官方了,百度百科啊
_lee_chong 2015-08-06
  • 打赏
  • 举报
回复
至少他返回了就说明调用没错; 函数原型 int PASCAL FAR WSACleanup (void); 返回值 操作成功返回值为0;否则返回值为SOCKET_ERROR,可以通过调用WSAGetLastError获取错误代码。 在一个多线程的环境下,WSACleanup()中止了Windows Sockets在所有线程上的操作.

110,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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