Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
A version of this page is also available for
4/8/2010

This function returns the highest extension version number the service provider can operate under for this device, given the range of possible extension versions.

Syntax

LONG TSPIAPI TSPI_lineNegotiateExtVersion(
  DWORD 
dwDeviceID, 
  DWORD 
dwTSPIVersion, 
  DWORD 
dwLowVersion, 
  DWORD 
dwHighVersion, 
  LPDWORD 
lpdwExtVersion 
);

Parameters

dwDeviceID

Line device for which interface version negotiation is to be performed. The value INITIALIZE_NEGOTIATION may not be used for this function.

dwTSPIVersion

Interface version number that has already been negotiated for this device using the TSPI_lineNegotiateTSPIVersionfunction. This function operates according to the interface specification at this version level.

dwLowVersion

Lowest extension version number under which TAPI or its client application can operate. The most-significant WORD is the major version number and the least-significant WORD is the minor version number. TAPI does not validate this parameter when this function is called.

dwHighVersion

Highest extension version number under which TAPI or its client application can operate. The most-significant WORD is the major version number and the least-significant WORD is the minor version number. TAPI does not validate this parameter when this function is called.

lpdwExtVersion

Pointer to a DWORD. Upon a successful return from this function, the service provider fills this location with the highest extension version number, within the range requested by the caller, under which the service provider can operate. The most-significant WORD is the major version number and the least-significant WORD is the minor version number. If the requested range does not overlap the range supported by the service provider, the function returns LINEERR_INCOMPATIBLEEXTVERSION.

Return Value

Returns zero if the function succeeds, or an error number if an error occurs. The following table shows the return values for this function.

Value Description

LINEERR_INCOMPATIBLEAPIVERSION

The API version is incompatible.

LINEERR_OPERATIONUNAVAIL

The operation is unavailable.

LINEERR_INCOMPATIBLEEXTVERSION

The extension version is incompatible.

LINEERR_OPERATIONFAILED

The operation failed.

LINEERR_NODRIVER

The driver cannot be found.

LINEERR_RESOURCEUNAVAIL

The resource is unavailable.

LINEERR_NOMEM

Not enough memory is available.

Remarks

This function can be called before or after the device is opened by TAPI. If the device is currently open and has an extension version selected, the function gives that version number if it is within the requested range. If the selected version number is outside the requested range, the function returns LINEERR_INCOMPATIBLEEXTVERSION.

Requirements

Header tapicomn.h
Library coredll.lib
Windows Embedded CE Windows CE 3.0 and later
Windows Mobile Windows Mobile Version 5.0 and later