草庐IT

windows - 如何更改程序的套接字绑定(bind)端口?没有源代码

问题:我在Windows上有一个程序dummy.exe。该程序启动后将绑定(bind)到UDP端口5060。但另一个程序也想绑定(bind)端口5060。我做了什么:使用windbg启动dummy.exe,并在ws2_32!bind设置断点当断点命中时,我使用命令ew更改了参数(端口值)此dummy.exe将绑定(bind)到新端口,并且运行良好。问题:我怎样才能轻松做到这一点?写一个简单的Windows调试器?也许我可以破解或修改dummy.exe文件,但该怎么做?您是如何实现这一目标的?谢谢编辑1:非常感谢@CodyGray和@cdhowie此软件不提供更改端口的功能。我需要使用此

windows - 连接的套接字信息

你好,如何从连接的套接字中获取信息。我需要获取服务器地址,套接字连接到端口。这有可能得到吗?我需要在WSPSend中弄清楚,是否阻止它。所以我不记得它是从以前的Action中形成的(比如socket()、connect()等等)谢谢。 最佳答案 getpeername 关于windows-连接的套接字信息,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/5459550/

c++ - 多播基础 - 丢失数据

如果您的应用程序不处理,它是读取组播数据的基本原则吗?下一个数据报先于另一个数据报进来第一个本质上是覆盖?我做了一些实验,增加receive_buffer大小没有效果关于我所描述的。换句话说,Windows操作系统或NIC卡软件似乎没有对多播数据报进行低级排队。我的理解正确吗?或者是否有一些套接字选项或控件可以帮助解决这个问题? 最佳答案 WindowsXP有一个8KB的默认套接字缓冲区,Vista和更高版本有一个64KB的默认套接字缓冲区。您可以使用SO_RCVBUF覆盖它,建议永远不要设置为0,这与使用IOCP时用于零拷贝的SO

windows - Linux 客户端和 Windows 服务器之间的套接字 "recv"函数中的结构困惑,适用于 Windows

我得到了这样的客户端和服务器结构:{chartype;intpayloadLen;charfileName[50];intfileIndex;intblockOffset;intblockLen;charstreamingData[MAX];inth264fileLayer;}在客户端中我接收到类似的数据memset(&data_recevied,0,sizeof(data_received);recv(sockfd,(char*)&data_received,sizeof(data_received),0);我用它来接收从服务器发送的文件,前几个文件一切正常,然后它坏了,当它坏了时我

windows - 关于 127.0.0.1 和 IPC 使用套接字

我想我会在127.0.0.1上使用套接字来为我的应用程序创建简单的IPC。我的目标是Windows、Mac和Linux。我有几个问题:防火墙或其他工具能否阻止我在这3个操作系统中的任何一个上的连接连接速度快吗?有人告诉我,在Linux上,它使用管道传输数据。能否嗅探连接(编辑:例如可以使用RawCap嗅探。) 最佳答案 127.0.0.1(localhost)是环回接口(interface)。这一切都是内部的,不会影响电线。防火墙能挡住吗?不是外部防火墙,但也许在同一台机器上运行的软件防火墙可以。速度快吗?Asfastasitcan

c - 套接字连接失败,telnet OK

我的问题是我无法通过套接字(windowsxp和windows7)连接两个组件,尽管用套接字创建的服务器正在监听并且我可以远程登录它。然后它接收信息并执行应该做的事情,但是如果我运行相应的套接字客户端,我会收到错误10061。此外,我在防火墙后面-这两个组件在我的LAN中运行,Windows防火墙已关闭,comp1[客户端]:192.168.1.2端口12345comp2[服务器]:192.168.1.5端口12345路由器:192.168.1.1也许端口转发会有帮助?但对我来说最重要的是回答为什么在telnet工作正常时套接字会失败。客户:intmain(){//Initialize

c++ - 在使用 WinCrypt 证书进行身份验证的 Windows 上创建 SSL 套接字?

在验证SSL客户端连接时,服务器希望客户端提供证书。在典型的企业Windows平台上,这些证书位于Windows加密存储的“个人”部分(使用以下命令打开:“certmgr.msc”)OpenSSL不使用这些证书。Windows确实提供了一个WinHTTPAPI,它提供了创建SSL连接的能力,但它们必须遵守HTTP请求/响应协议(protocol),有没有人知道WindowsAPI允许程序员创建一个使用Windows密码存储证书进行身份验证的SSL连接,但是可以像OpenSSL套接字一样使用吗?谢谢。 最佳答案 Openssl支持多种

C# 套接字无法重新连接

我有一段时间试图解决的问题,但仍然没有成功。我们有简单的服务器客户端应用程序,它通过同步交换消息来工作。相关代码如下。创建套接字:Socketsender;IPAddressipAddress=IPAddress.Parse(remoteHost);IPEndPointremoteEP=newIPEndPoint(ipAddress,remotePort);sender=newSocket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);sender.SetSocketOption(SocketOptionL

windows - 如何将打开的 TCP 套接字作为标准输入和标准输出从 Perl 传递到 Windows 应用程序

我正在尝试将来自Perl程序的开放式TCP套接字连接作为stdin和stdout传递到Windows上的外部应用程序,类似于Unix世界中的inetd。我尝试过的:使用open或POSIX::dup2并调用exec将stdin和stdout替换为套接字:#$socketisanopenTCPsocketopenSTDIN,'&',$socketordie"Unabletodupstdout:$^E";close$socket;exec($program)ordie"Unabletoexec$command:$^E";使用IPC::open3:my$pid=open3('>&'.$soc

c++ - TCP Sockets什么时候需要Keep-alive?

据我所知,在TCP套接字上保持事件状态有助于了解套接字是否刚刚打开以及两个套接字之间的连接是否实际上处于事件状态。所以,我有几个关于Winsocks2中Keepalive用法的问题想咨询一下:当keep-alive选项检测到死套接字时会发生什么?如何在不实际使用的情况下检查连接是活的还是死的send和recv?如果我必须使用send和recv然后功能首先使用keep-alive有什么意义? 最佳答案 Whathappenswhenkeep-aliveoptiondetectsadeadsocket?连接被重置,任何读取或写入都会出现