VB6 MSComm,高于 127 的端口返回 8002



我有一个简单的函数来检查系统上是否有开放的端口,我会测试从 1 到 256 的端口。出于某种奇怪的原因,当我的设备端口超过127时,系统返回错误8002。这很奇怪,因为当我使用不同的C++应用程序来检查连接设备是否找到并可供阅读时。

此问题与 MSComm32.OCX 有关,它对可用的端口数有限制。我需要将此限制增加到 256。我在下面找到了说明列表,但我无法在MSComm32.OCX文件中找到"3D 10 00",这是在Windows 8 PC上。但是,在Windows XP MSComm32.OCX上确实包含"3D 10 00",我很快找到了字符串并添加了一个新的字节"FF"并使用 http://mh-nexus.de/en/hxd/删除了字节"10"并将其另存为新文件。

First you copy the file MSCOMM32.OCX to a safe place.
1. Obtain a HEX editor.
2. Open de file MSCOMM32.OCX
3. Find the string "3D 10 00"
4. There should be only one. This string is unique.
5. Change the string to "3D FF 00"
6. Save the file.
我不知道

这对您的情况是否有帮助,但是您将无法使用此过程编辑原始ocx文件。您只能在注册文件后对其进行编辑。原件是"千篇一律",所有注册文件都是从中衍生出来的,它具有完全不同的结构。注册的文件将包含"3D 10 00"序列,并且可以修改。如果可以修改原始实例,那就太好了,因为所有新实例中都已经有修改后的端口上限,但Microsoft确保这不起作用。

最新更新