尝试打开模块会出现错误“服务版本太低”

问题描述

我正在尝试为特定模块打开会话,但收到一条消息,提示“此服务版本太低。”。

我该如何解决这个问题?该模块是唯一一个服务版本高于所有其他模块的模块,我不想太高,因为服务版本太高其他模块将无法工作。

我使用的 SPI 和 API 版本是 0x0B020003,它适用于所有其他模块,除了这个 3.10。

任何帮助将不胜感激,谢谢。

解决方法

您不需要使用可用的最高版本。使用您需要的版本。例如,如果您的应用不需要任何 3.10 规范的新功能,而 3.00 就是您所需要的,您可以自由地将此 SPI 开放为 3.00。

要打开 SPI 为 3.10,请使用 0x0A03 值表示 0A = 10,03 = 3。此版本规范是标准的,与供应商无关。

dwSrvcVersionsRequired 设置为 0x0A030A03 以始终将此 SPI 打开为 3.10。

任何 SPI 都可以支持一个版本范围。例如,从 3.00 到 3.20。应用程序要做的第一件事是协商您要使用的版本(因为您的应用程序已使用特定版本的 xfsapi.h、xfspin.h 编译)。 WFSStartUp 与 XFS 管理器协商版本。 WFSOpen 与 SPI 协商版本。

供应商在 ATM 中安装 SPI,支持完整的版本范围。因此,您可以使用支持的版本范围中所需的版本打开每个 SPI。