lineNegotiateExtVersion
The
lineNegotiateExtVersion function allows an application to negotiate an extension version to use with
the specified line device. This operation need not be called if the application
does not support extensions.
LONG lineNegotiateExtVersion(
HLINEAPP hLineApp,
|
|
DWORD dwDeviceID,
|
|
DWORD dwAPIVersion,
|
|
DWORD dwExtLowVersion,
|
|
DWORD dwExtHighVersion,
|
|
LPDWORD lpdwExtVersion
|
|
);
|
|
Parameters
hLineApp
The handle to the application's registration with TAPI.
dwDeviceID
The line device to be queried.
dwAPIVersion
The API version number that was negotiated for the specified line device using
lineNegotiateAPIVersion.
dwExtLowVersion
The least recent extension version of the extension ID returned by
lineNegotiateAPIVersion that the application is compliant with. The high-order word is the major
version number; the low-order word is the minor version number.
dwExtHighVersion
The most recent extension version of the extension ID returned by
lineNegotiateAPIVersion that the application is compliant with. The high-order word is the major
version number; the low-order word is the minor version number.
lpdwExtVersion
A pointer to a DWORD-sized location that contains the extension version number
that was negotiated. If negotiation is successful, this number will be in the
range between
dwExtLowVersion and
dwExtHighVersion.
Return Values
Returns zero if the request is successful or a negative error number if an
error has occurred. Possible return values are:
LINEERR_BADDEVICEID, LINEERR_NOMEM, LINEERR_INCOMPATIBLEAPIVERSION,
LINEERR_NODRIVER, LINEERR_INCOMPATIBLEEXTVERSION, LINEERR_OPERATIONFAILED,
LINEERR_INVALAPPHANDLE, LINEERR_RESOURCEUNAVAIL, LINEERR_INVALPOINTER, LINEERR_UNINITIALIZED,
LINEERR_NODEVICE, LINEERR_OPERATIONUNAVAIL.
Remarks
Use
lineInitializeEx to determine the number of line devices present in the system. The device ID
specified by
dwDeviceID varies from zero to one less than the number of line devices present.
The
lineNegotiateAPIVersion function negotiates the API version number to use. It also retrieves the
extension ID supported by the line device, which is zeros if no extensions are
provided. Version numbers should be incremented by one for each release. Leaving
gaps in release version numbering may cause unexpected results.
If the application wants to use the extensions defined by the returned
extension ID, it must call
lineNegotiateExtVersion to negotiate the extension version to use.
The extension version number negotiated is that under which the application
and service provider must both operate. If version ranges do not overlap, the
application and service provider versions are incompatible and an error is
returned.
See Also
lineInitializeEx,
lineNegotiateAPIVersion
- Software for developers
-
Delphi Components
.Net Components
Software for Android Developers
- More information resources
-
MegaDetailed.Net
Unix Manual Pages
Delphi Examples
- Databases for Amazon shops developers
-
Amazon Categories Database
Browse Nodes Database