TSPI_phoneNegotiateTSPIVersion函数 (tspi.h)

鉴于可能的 SPI 版本范围, TSPI_phoneNegotiateTSPIVersion 函数返回服务提供商可为此设备操作的最高 SPI 版本。

语法

LONG TSPIAPI TSPI_phoneNegotiateTSPIVersion(
  DWORD   dwDeviceID,
  DWORD   dwLowVersion,
  DWORD   dwHighVersion,
  LPDWORD lpdwTSPIVersion
);

参数

dwDeviceID

要为其执行接口版本协商的电话设备。 允许的值严格在此服务提供商的电话设备标识符范围内; INITIALIZE_NEGOTIATION 的值永远不会传递给此函数。

dwLowVersion

TAPI 可以运行的最低 TSPI 版本号。 最重要的 WORD 是主版本号,最小有效 WORD 是次要版本号。

dwHighVersion

TAPI 可以运行的最高 TSPI 版本号。 最重要的 WORD 是主版本号,最小有效 WORD 是次要版本号。

lpdwTSPIVersion

指向 DWORD 的指针。 从此函数成功返回后,服务提供商会在调用方请求的范围内用最高 TSPI 版本号填充此位置,服务提供商可以在该范围内进行操作。 最重要的 WORD 是主版本号,最小有效 WORD 是次要版本号。 如果请求的范围不与服务提供商支持的范围重叠,则函数将返回PHONEERR_INCOMPATIBLEAPIVERSION。

返回值

如果函数成功,则返回零;如果发生错误,则返回错误号。 可能的返回值如下所示:

PHONEERR_INCOMPATIBLEAPIVERSION、PHONEERR_RESOURCEUNAVAIL、PHONEERR_NODRIVER、PHONEERR_OPERATIONFAILED、PHONEERR_NOMEM、PHONEERR_OPERATIONUNAVAIL。

注解

如果操作不可用,则服务提供程序将返回PHONEERR_OPERATIONUNAVAIL。 但是,如果服务提供商支持任何电话设备,则它还必须支持此功能,并且该函数不得返回PHONEERR_OPERATIONUNAVAIL。

TAPI 在初始化序列中为每个手机设备调用此函数。

扩展版本的协商通过单独的过程 TSPI_phoneNegotiateExtVersion完成。

TAPI 级别的相应函数是一个重载函数,它还检索服务提供商支持的扩展标识符(如果有)。 在 TSPI 级别,检索扩展标识符是通过单独的过程完成的,即 TSPI_phoneGetExtensionID

要求

   
目标平台 Windows
标头 tspi.h

另请参阅

INITIALIZE_NEGOTIATION

TSPI_phoneGetExtensionID

TSPI_phoneNegotiateExtVersion