VB6 应用程序在 Windows XP 而非 Win 7 上使用 UDP

VB6 application works with UDP on Windows XP not Win 7

我用 vb6 开发了一个应用程序,它从 TCP/IP 接收消息并将消息处理为 XML 格式。然后它向 127.0.0.1 的 UDP 端口发送消息。有另一个应用程序读取 UDP 消息。

简述:

[ App 1 : send ] ---> TCP/IP 
---> [My App : receive and transform to XML format ] ---> Send to UDP
---> [ App 2 : read UDP ]

App 1 不是我的,一些大供应商开发的,我认为它更像是我的应用程序的问题而不是他们的应用程序。

在windowsXP环境下,所有应用程序都安装在XP机器上。我用了很多年都没问题。

但是,我将系统升级到Windows7。大部分都可以,但在App 2 中读取UDP 根本不起作用。

我用自己创建的 Network Tester 进行了测试。我能够看到传递到 UDP 端口的消息的 XML 格式。但是,应用 2 根本没有在阅读消息。

我对 XP 和 7 有相同的配置。对于每个应用程序,它们都有 ini 文件和配置文件,我可以复制这些文件并将其应用于新的 Windows 7 系统。所以我相信他们的配置是完全一样的。

此外,我运行所有这些都处于Windows XP兼容模式。但这并没有帮助。

我禁用了防病毒软件、防火墙和其他端点解决方案,但没有成功。而且我认为这些软件没有问题,因为我的网络测试仪能够读取 UDP 消息。

您有什么进一步检查的建议吗?从 XP 到 7,UDP 有什么不同吗?

我有几个版本的应用程序接收 TCP/IP 消息并将其传递给 UDP。我使用的是以前开发的应用程序之一,不是最新的。最近的更新解决了问题。我假设以前的不是开发最新版本的 VB6。但是,最新版本是在VB6上开发的,带有最新的服务包以及微软对UDP问题的修复。

如果您遇到同样的问题,请将VB6更新到最新版本并重新编译项目并参考微软的技术支持页面。