问题标签 [windows-networking]

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 投票
1 回答
1606 浏览

c++ - 如何在 Poco::HTTPClientSession 中获取下载大小?

}

如何在下载之前获取下载大小?因为有时我得到损坏的文件,所以我想检查大小。

0 投票
1 回答
4516 浏览

java - 多次绑定到同一个端口?

为什么以下代码不抛出“java.net.BindException:地址已在使用:JVM_Bind”异常?

之后运行“netstat”显示:

p>

我在 Windows Server 2008 R2(64 位)上运行它,并且“ipconfig /all”仅显示一个网络适配器/接口(其他网络适配器被禁用)。但是,在其他一些机器上,这个程序实际上确实抛出了预期的“java.net.BindException:地址已经在使用:JVM_Bind”!

会发生什么?

0 投票
1 回答
351 浏览

c# - Windows App Store - System.Net 命名空间 - 等效对象

我知道 Windows App Store 应用程序对 System.Net 命名空间的支持有限。

我知道对于 TCP 和 UDP 协议,Windows.Networking 命名空间包含 StreamSocket、DataReader、DataWriter 等等价物。

我使用 System.Net 中的其他一些重要对象,我似乎无法在 WinRT 中找到等效对象。特别是这些:

有人知道这些的等价物吗?

0 投票
1 回答
841 浏览

winapi - 枚举林中的域(Windows 网络)

我正在寻找一种 API 方法来检索“net view /domain”所做的信息。即,我正在寻找一种使用win32api(在C环境中)枚举森林中可见域的方法

谢谢。

更新: 似乎DsEnumerateDomainTrusts可以做我需要的,但是,它看起来不像 net.exe 导入它,所以我仍然想知道其他选项。

Update2: 顾名思义,该函数仅枚举受信任域,即使指定了 DS_DOMAIN_IN_FOREST 也是如此,所以我在第 1 格。

0 投票
0 回答
297 浏览

winapi - 检测路径为 SkyDrive 路径/Resolve skydrive path to WebDav path

前言:

如果您尝试将文件从任何 Microsoft Office 应用程序保存到 SkyDrive 文件夹,则应用程序(Word 等)将检测到并切换到通过 WebDAV 的 MS 扩展直接访问 SkyDrive(保存图标将变为同步图标,您将查看其他用户访问该文件等)

现在,我知道如何将Windows 驱动器号解析为路径(subst 和网络),并且想知道我是否可以为 SkyDrive 路径做类似的事情?

如何 C:\Users\MyUsers\SkyDrive\File.doc 解决 https://d.docs.live.net/UserId/File.doc

SkyDrive API对此只字未提,我想避免直接与 SkyDrive 客户端混淆。

谢谢!

0 投票
3 回答
1640 浏览

java - 对于少量 (16 < x < 24) 的同时客户端连接尝试,Windows 主机上的服务器拒绝客户端套接字连接

我们遇到了一个问题,当相对少量的节点(16 到 24 个,但我们将来需要处理更多)同时尝试连接时,我们的传入客户端套接字连接被拒绝到我们的套接字服务器。

一些细节:

  • 服务器在 Windows 2008 或 7 上运行
  • 我们的主服务器是使用 ServerSocket 用 Ja​​va 编写的
  • 客户端也是在我们数据中心的网格节点上运行的 Windows

当我们尝试在网格上进行测试运行时,客户端节点尝试连接到服务器并发送一个 40-100K 的数据包,然后断开连接。使用 16 到 24 个节点,我们开始看到客户端连接无法连接到服务器的问题。鉴于这种设置,我们正试图处理最多 16-24 个并发客户端连接和失败,这对我们来说似乎根本不正确。

主服务器循环正在侦听常规的 SocketServer,当它获得连接时,它会生成一个新线程来处理连接,并立即返回以侦听套接字。我们还有一个虚拟的 python 服务器,它简单地读取和丢弃传入的数据,还有一个 C++ 服务器,它在转储数据之前记录数据,两者都遇到同样的问题,客户端无法连接,之前成功的客户端连接的数量有微小的变化失败开始。这使我们相信任何特定的服务器在这个问题上都没有错,它可能是环境问题。

我们的第一个想法是增加套接字上的 TCP 积压。即使被推到非常高的水平,这也没有缓解这个问题。Java SocketServer 的默认值是 50,远低于我们的处理能力。

我们已经在同一子网的机器之间运行了测试,并禁用了机器上的所有本地防火墙,以防 FW 对我们与服务器的连接进行速率限制;没有成功。

我们已经尝试在运行服务器的 Windows 机器上调整网络:

  • 减少 TimedWaitDelay,但没有效果(在我的 Python 测试中它不应该因为该测试只运行几毫秒)。
  • 将 MaxUserPort 增加到一个较大的值,大约 65000,但没有效果(这很奇怪,因为我的 Python 测试只发送 240 条消息,所以我什至不应该接近这种类型的限制)。
  • 将 TcpNumConnection 增加到一个较大的值(不记得确切的数字)。同样,我们一次不应该有超过 24 个连接,所以这不能是一个限制。
  • 启动“动态积压”功能,允许消息积压动态增加。我认为我们将最大连接数设置为 2000,最小连接数为 1000,但没有效果。同样,Python 不应建立超过 240 个连接,因此我们甚至不应该激活动态积压。
  • 除了上述禁用 TCP 端口的 Windows“自动调整”之外。再次,没有效果。

我的感觉是 Windows 以某种方式限制了入站连接的数量,但我们不确定要修改什么以允许更多的连接。网络上的代理限制连接速率的想法似乎也不正确。我们高度怀疑同时连接的数量是否会使物理 GB 网络超载。

我们很难过。有没有其他人遇到过这样的问题并找到了解决方案?

0 投票
1 回答
774 浏览

c++ - 我如何以编程方式检查我的电脑是否在代理后面?

我正在尝试找到一种确定我的电脑是否在代理后面工作的好方法。

我正在浏览 WinAPI,但找不到任何有用的东西。我已经读过,在端口 80 上打开一个到 Internet 地址的 tcp 连接就足够了,但这真的是最好的解决方案吗?

我不想检查每个浏览器的代理设置,而是检查全局系统代理设置……如果有类似的东西。

我必须使用 Windows(应支持 XP 和 Windows 7 及更新版本)和 C++

0 投票
1 回答
1375 浏览

c++ - 获取活动 udp 连接的目标 IP/端口?

我能够使用 iphlpapi 检索活动的 TCP 和 UDP 连接。TCP 连接显示源信息(IP/端口)、目标信息(IP/端口)、状态和进程 ID。但是对于 UDP 连接,它没有提供远程 IP 和端口。那是我想要得到的。在 Delphi 或 C++ 中使用源信息或进程 ID 获取目标信息的任何方式。

0 投票
0 回答
123 浏览

winapi - 确定名称是 Windows 林中的工作组还是域

我的应用程序在客户端的网络上运行,在那里他们有一个带有多个DomainsWorkgroups. 我们使用NetServerEnum带有 flag 的函数SV_TYPE_DOMAIN_ENUM来枚举所有这些“子网络”——域和工作组。

之后,我们需要确定每个名称是 aWORKGROUP还是 a DOMAIN

我有一个选择是 using DsGetDcName,知道它应该对工作组失败,但我很确定有更好的方法。

0 投票
2 回答
6698 浏览

c++ - ::createFile winApi 失败并出现错误 5 (access_denied) 。是shell编程或其他解决方案或任何提示。

我在互联网上的某个地方发现了这个问题,现在面临同样的问题。几乎没有变化,我已经在下面修改了问题。

问题:

我想访问远程机器(10.10.20.30)上的文件,但我不明白如何在我的程序中登录到该机器。是否有任何简单的win api可以获取网络路径、凭据并返回文件句柄?我只想访问\10.10.20.30\share 文件夹\test.txt。任何建议都会有所帮助。

很抱歉在编码意义上不是很清楚。详细信息:我想访问共享文件夹中共享的文件,但未授予我权限。我正在使用::CreateFile来获取文件的句柄。但在这种情况下,我收到错误代码 5 (ACCESS_DENIED)。我需要使用用户(我的客户)凭据(用户名密码)来访问共享的文件。我只需要文件句柄。告诉我如果我错了 ::CreateFile 在这种情况下不能通过使用或修改 MSDN 所说的安全属性来使用。CreateFile 在打开现有文件时忽略 lpSecurityDescriptor 成员。我也想过使用 Window shell,但无法解决。

问题详情 *好吧,远程机器上的要求是这样的,我没有EveryOne权限。让我通过一个例子来解释。假设有某个域的网络至少有 3 台计算机让我们说 5。现在名称是 C1(客户端),C2(目标),C3,C4,C5。现在在这种情况下,我将在 C2 机器上创建一个文件(任何类型)并将其放在一个文件夹中,比如 MyFolder。现在让它共享,然后从中删除 EveryOne。之后添加 C5 作为访问它的用户。现在您可以看到仅使用 ::CreateFile 实现编写一些代码并在机器 C1(客户端)和 C5(它具有权限)上运行它。您将看到客户端(C1)将收到错误 5,这意味着 ACCESS_DENIED 但 C5 将执行它并获取文件句柄......现在我再次重复我的问题,我需要通过我的任何方式获取文件句柄用户名和密码,

请建议我提前谢谢

::CreateFile Fails with Access denied is shell 编程或其他解决方案或提示