问题标签 [winsock2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
9973 浏览

c++ - C++ - 向客户端发送简单 HTML 的简单服务器

现在,我只是在玩这个,我不确定为什么这不起作用。

当我编译并运行它,然后在浏览器中导航到 127.0.0.1 时,我在控制台中得到了这个:

获取/HTTP/1.1

主机:127.0.0.1

连接:保持活动

用户代理:Mozilla/5.0(Windows;U;Windows NT 5.1;en-US)AppleWebKit/530.5(K HTML,如 Gecko)Chrome/2.0.172.8 Safari/530.5

缓存控制:max-age=0

接受:application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png, / ;q=0.5

接受编码:gzip、deflate、bzip2、sdch

接受语言:en-US,en;q=0.8

接受字符集:ISO-8859-1,utf-8;q=0.7,*;q=0.3

编辑- 我已经更新了我发送的 HTML。我刚刚用 Mozilla Firefox 和 Google Chrome 测试了它,它可以在 Firefox 中运行,但不能在 Chrome 中运行!

编辑 2 - 所以似乎它在 Firefox 上工作的原因,而不是 Chrome,是因为 Firefox 将 HTML 显示为收到的,而 Chrome 在进行任何渲染之前等待连接关闭。我添加了关闭套接字的代码并且它起作用了。我已经用工作源更新了我的代码。

0 投票
3 回答
1400 浏览

c++ - linux到windows C++字节数组

我必须在 C++ 中复制以下 Java 功能才能将数据从 Linux 获取到 Windows。Winsock2 是最好的方法吗?

另外,有什么参考代码可以建议吗?

TIA,乙

0 投票
3 回答
2566 浏览

delphi - 使用winsock2和IOCP替换Delphi TClientSocket?

有这样的事吗?它需要是异步的(没有 Indy)。

0 投票
3 回答
4723 浏览

c++ - 使用 LoadLibrary 和 GetProcAddress 调用 WinSock 函数

基本上我有一个这样的头文件:

然后我做这样的事情:

但是,当我调用此函数(带有 (*start)(test, &wsdata) 的行)时,我收到以下错误消息:

sockets.exe 中 0x7868146a 处未处理的异常:0xC0000005:访问冲突。

我尝试更改调用约定(__cdecl、WINAPI、WSAAPI),但它总是以相同的错误消息结束。

0 投票
4 回答
2645 浏览

c++ - Winsock2:如何在 VC++ 中使用listen的积压一次只允许一个客户端连接

我想一次只允许来自我的 TCP 服务器的一个连接。你能告诉我,如何在没有积压长度为零的情况下使用监听。

我正在使用代码(如下所示),但是当我一个一个启动 2 个客户端时,两个客户端都已连接。我正在使用带有winsock2的VC++。

听(m_socket,-1);

将零作为积压传递也不起作用。

等待你的回复。

问候,
伊米

0 投票
1 回答
370 浏览

winsock2 - 当没有 QoS 套接字处于活动状态时,Windows RSVP QoS 服务将停止。那可以改变吗?

我们有一个使用 QoS 套接字的程序,我们的软电话应用程序将 QoS 用于 RTP。

该应用程序通常保持运行状态,但有时会重新启动。(停止,等待 300 毫秒,开始。)

我们发现,当软件电话应用程序停止时,最后一个在服务器上使用 QoS,因此 Windows 上的 RSVP QoS 服务也停止了。

当我们重新启动我们的应用程序时,RSCP QoS 服务通常启动得非常快,但有时服务启动需要整整 30 秒,导致我们的应用程序启动也很慢。

任何人都知道我是否可以将服务配置为每次都不停止?

计算机是 Windows XP SP3,打开了 Windows 防火墙。(我们的应用程序确实在防火墙中有一个例外。)

问候
雷夫

0 投票
2 回答
14681 浏览

windows - 是否可以判断 WSAStartup 是否已在进程中调用?

我已经开始编写一个使用套接字的 ActiveX 控件。

使用此控件的应用程序可能会也可能不会使用套接字。我的控件是否可以判断 WSAStartup 是否已被调用?

如果没有,请调用它。一个小测试表明多次调用 WSAStartup 是可以接受的。但是如果请求不同的 winsock 版本会发生什么?这会破坏应用程序的其他部分吗?

0 投票
1 回答
3094 浏览

c - 在 c 中使用 Windows 套接字应用程序绑定错误 10038

我正在用 c 测试一个 Socket Server 应用程序,我在绑定函数上遇到错误,代码为 10038。我查了一下,MSDN 说这意味着:

尝试对不是套接字的东西进行操作。套接字句柄参数没有引用有效的套接字,或者对于 select,fd_set 的成员无效。

这是代码:

// 我有正确的包含文件,例如 include ,但是当我输入 #include winsock2.h 时,stackoverflow 显示它很奇怪

}

0 投票
2 回答
7303 浏览

tomcat - 在使用 Tomcat 的 Windows 7 上出现“已禁用 AcceptEx() WinSock2 API”错误

使用 C:\Program Files\Apache Software Foundation\Tomcat 6.0\bin\tomcat6.exe 在带有 JRE 6 的 Windows 7 Enterprise 上启动 Tomcat 6 时,应用程序未打开,并且我的事件查看器显示以下消息:

“禁止使用 AcceptEx() WinSock2 API。”

在我升级操作系统之前,相同的 Tomcat 安装程序可以在 Windows Vista 上运行。

任何人都可以提出解决这个问题的方法吗?

我能找到的唯一提到这一点的网站是 http://www.apachelounge.com/viewtopic.php?p=4418 ,它建议使用此配置设置“Win32DisableAcceptEx” - 但它适用于 Apache,而不是 Tomcat,我不知道在哪里在什么配置文件中它可能需要进入 Tomcat。

0 投票
3 回答
2987 浏览

64-bit - 64 位 Windows 上的 gethostbyname 问题

我正在尝试将一些代码从 32 位 Windows(XP 和 Server 2003)迁移到 64 位 Windows 7,但我遇到了一个奇怪的 gethostbyname 问题。

我正在做这样的事情:

调用 gethostbyname 后,指针 hp->h_addr_list 无效。它有所有正确的数字,但看起来一个 32 位指针不知何故塞进了错误的空间。

例如,我得到的是

hp->h_addr_list = 0x0064bdd800000000

如果我手动交换前半部分和后半部分,以便 hp->h_addr_list = 0x000000000064bdd8 则指针有效并指向正确的数据。

有时我也会得到 baadf00d 而不是零(即 hp->h_addr_list = 0x0064bdd8baadf00d),

据我所知,所有内容都链接到正确的 64 位版本的 winsock 库,所以我不确定是什么导致了这种问题。