winsock

CentOS 和 Windows 之间关于端口号的不同行为

我已经制作了 C 程序,它们是服务器和客户端。他们使用 udp 互相发送消息。 服务器一直等待,直到客户端发送消息。 当我从客户端控制台键入一些消息时,客户端会将消息发送到服务器。 服务器从客户端接收消息,然后服务器将在其控制台上回显该消息并将相同的消息发送回客户端。 最后,客户端在其控制台上显示服务器发回消息的消息。 在此过程中,客户端在其控制台上显示其源端口号。服务器还显示客户端的源... »

c

连接德尔福打印机

我需要将我的 Delphi 软件连接到 SmartDate x40 打印机,我已尝试使用 winslock。我是 Delphi 的新手,我无法让它发挥作用,我非常感谢你们任何好心人可以提供的任何提示或一点帮助。 我看过一些关于在 Delphi 中使用 Winslock 的帖子,尽管它们都使用客户端-服务器连接,而客户端是建立连接的客户端,我需要成为启动与 SmartDate 通信的服务器机器能够... »

使用 C# 连接/重试连接的最有效方法?

我正在创建一个小游戏客户端,该客户端最终将连接到服务器以收集有关可玩游戏、正在玩多少玩家以及您可以想象它应该做的各种其他事情的一些信息。< /p> 我的困难在于找到一种有效的方法来处理首次加载时的连接/重试连接序列。 我想我的客户会按照这个过程尝试连接: 已执行客户端应用程序 尝试建立连接 如果连接成功收集信息 - 如果不成功,请继续执行步骤 4 显示一个新的对话框/表单,提示用户正在尝... »

c#

如何从 SOCKADDR 结构中获取 IPv4 地址?

我不知道如何从IP_ADAPTER_UNICAST_ADDRESS_LH 结构的Address 字段中获取实际的 IP v4 地址(例如 192.168.1.1 或其对应的 32 位整数打包形式)。我去了链接列表和相应的 MSDN 链接的兔子洞,但 SOCKADDR 是它切断的地方。 SOCKADDR 是通用数据持有者,它必须转换为 IPv4 变体才能获得数据的结构化视图。 问题是,我找不到 S... »

特定接口上的 TCP/IP 连接

我想使用两条网络路由之一连接到服务器。如何做到这一点?我用谷歌搜索了很多,常见的答案是摆弄路由表,但这无济于事,因为目的地只有一个 IP 地址。大多数示例都具有具有单个网卡的客户端和具有多个 NIC 的服务器,但在这种情况下正好相反。 ForceBindIP 应用似乎能够提供这种类型的功能,所以我想它一定是可能的。 +-----&gt;-------+ 192.168... »

c++

是否可以在 VBA 中托管网络服务器?

我想托管一个 Web 服务器并想使用 VBA 来完成它。这可能吗?我这样做只是为了证明某人错了,并且真的想制作这个程序。 那么是否有可能制作一个非常简单的 Web 服务器(只监听 get 请求)?非常感谢您的帮助。 编辑 我正在尝试这样的事情 Sub startServer() Set wunsock = CreateObject("OSWINSCK.Winsock") ... »

vba

recv() 在非阻塞 tcp ip 套接字的对等断开时返回 -1

我正在使用 tcp/ip 套接字,并且我已经阅读了有关 recv 函数的信息。因此,每当对等点断开连接时,根据文档,recv 返回 0,但在 Windows 上,它不是返回零,而是返回 -1,errono 中的值是0,我无法理解它为什么这样做。相同的代码在 linux 中运行完美。 // some headers i used #ifdef _WIN32 /* See http://stackov... »

c++

用于 Visual C++ 2008 Express 的 WinSock 库?

请问如何将winsock 库添加到Visual C++ 2008 Express 中?我尝试单独包含 &lt;windows.h&gt;,而不是 &lt;windows.h&gt; and &lt;winsock.h&gt;,,但在 WSAStartup() 上出现 LINK 错误。 我在某个地方发现你需要为你的项目添加额外的依赖项,所以我调出了项目属性的链接器,并且在额外依赖项的选择框中没有 ... »

WinSock c++ inet_ntop 总是显示 204.204.204.204 (并且 accept() 没有失败)

我正在尝试制作一个 winsock 服务器,我想在他连接时在服务器上显示客户端的 ip,但这就是问题所在。每次我尝试连接它时都会显示 204.204.204.204。我试图与另一台计算机连接,但结果是一样的。 result in localhost 之后,我开始在这个网站上寻找和我有同样问题的人,我发现有几个人和我有同样的问题,但他们的 accept 或 inet_ntop 函数都不能正常工作。... »

c++

可以将套接字作为 const 传递给函数吗?

假设我有一个名为 socket 的 Windows 套接字。如果 socket 被传递给一个不写入它的函数。例如,说一个向客户端发送简单消息/字节的函数,如Hello you're connected to the server!。 例如: void send_hello(SOCKET socket, char* data) { send(socket, data, sizeof(data... »

c

C++ Winsock 10093 错误

我正在尝试用 C++ 构建一个可以接受多个客户端的服务器。为此,我构建了一个 winsock 包装器,并使用带有 boost 的线程来为每个客户端进行通信。 我在尝试接受客户时遇到了一个奇怪的问题,我有一个看起来像这样的循环。 int clientID = 0; listenSocket = new Socket(SocketType::TCP); listenSocket-&gt;Bind(p... »

c++

WSA UDP 套接字无法重用,因为它强制关闭连接

我需要关闭然后在我的应用程序中重用同一个套接字。套接字第一次连接时可以正常连接,但第二次尝试使用时,客户端从服务器收到 wsaerror 10054(现有连接被远程主机强制关闭),我看到服务器没有收到来自客户端的“syn”数据。这里似乎有什么问题?之前连接过的客户端能够再次连接到服务器,但是之前接收到连接的服务器无法接受新连接,因为它以某种方式导致了 10054。 连接管理器.hpp #pragm... »

c++

ioctlsocket 或 recv 在 Windows 套接字编程中需要更多时间来执行?

在套接字编程中,一些数据被发送到服务器,服务器一收到就发送确认响应消息。它超过 1 个字节,所以我在接收时检查多个字节,这里我丢失了大约 120-200 毫秒。这是一个非常大的问题。由于客户端需要为此确认发送回 ack。我已经嗅到了数据在服务器发送的同时到达了我的 IP。但是 recv 或 ioctlsocket(检查超过 1 个字节是否可以读取)需要时间来读取超过一个字节。我该如何解决这个问题。... »

c++

为什么我在 send() 函数中丢失了这个字节?

我们的应用程序是一个与 Windows Java 客户端通信的 C 服务器(这个问题是针对所述服务器的 Windows 端口的)。在这个特定的例子中,我们正在向客户端发送数据,特别是,消息由一个 7 字节的标头组成,其中前 3 个字节都有特定的含义(操作类型、标志等),最后 4 个字节包含消息的其余部分。出于某种原因,我完全无法弄清楚,标题中的第三个字节以某种方式发生了变化;如果我在send() ... »

c

通过winsock发送压缩字符串

大家好!我在 winsock2 lib c++ 上有一个简单的 TCP 服务器和客户端。服务器只是发送字符串消息。客户只是接收它们。这里一切都很好。但是当我使用 zlib 库压缩字符串时,数据已损坏,我无法在客户端上正确接收它们以进行解压缩。有人能帮我吗? 服务器: { std::lock_guard&lt;std::mutex&gt; lock(mtx); std::cou... »

c++

如何通过只知道局域网中的端口号来通过客户端程序检索服务器程序 ip?

我是一个尝试用 c 学习 winsock 编程的菜鸟。请告诉我以下是否可能。 如果这个问题很愚蠢,我很抱歉。但我真的很想知道答案。 我正在尝试一个客户端程序,它可以仅使用指定的端口号在网络上搜索其相关服务器。客户端必须在指定端口中找到提供服务的 IP,然后将该 IP 检索回客户端程序。所有这些都在同一系统或 LAN 中。 我的一个朋友说我必须在客户端的第一部分使用组播DNS或UDP来获取ip。... »

c

C ++ Win套接字睡眠错误?

我在使用 TCP 向下载的服务器发送文件时遇到了一点问题。我花了几个小时找出问题所在,但仍然找不到它不起作用的原因。 主要问题是当我尝试发送文件时。程序获得了我的文件的字节数也读取了文件并循环通过条件,但它有时只发送文件。当我通过调试器运行它时,程序总是发送所有文件。当我使用 sleep() 1 秒时,问题也消失了。 #include &lt;iostream&gt; #ifndef WIN32_... »

c++

VB6 winsock等待响应

我正在使用 vb6 中的 winsock 控件来检查 Web 服务的可用性。 我做了一个发布请求,获取响应并解析响应头以检查响应代码。 响应以多个数据包的形式到达。 ' this event occurs when data is arriving via winsock Private Sub wsTCP_DataArrival(ByVal bytesTotal As Long) D... »

如何链接winsock.lib?

在我的 C++ 类中,我使用套接字。 我在链接时遇到了一些错误,因为我认为库 winsock.lib 丢失了。 我包括了这些: #ifdef WIN32 #include &lt;winsock.h&gt; typedef int socklen_t; typedef char raw_type; #endif 如何链接库winsock.lib... »

c++