微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 无法分配新套接字,抛出无效参数异常

我创建了一个新项目,单行代码是新套接字的分配:

Socket s = new Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);

它引发了一个例外:

An unhandled exception of type system.net.sockets.socket exception
occurred in System32.DLL

Additional information: An invalid argument was supplied

它还会写出这些代码:0x80004005,ErrorCode:10022

解决方法

我希望我的迟到答案对于有同样问题的其他人仍然有用.

我遇到了几个网络/套接字示例和每次搜索(参数组合不匹配?/断开而不是关闭/可选设置以重用地址或套接字)的相同问题没有解决它.此“无效参数”错误消息具有误导性.现在,我想出来了:

最有可能的是,您还在Visual Studio或Executable(exe)中直接在网络卷或共享上运行代码.即使以管理员身份执行也无效.

当我将可执行文件/代码项目复制到我的PC上的本地卷时,所有套接字程序都运行良好(即使没有管理员权限).

可能更改用户帐户控制(UAC)权限或公司域组策略可以避免此问题.

问候缩略词.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐