phoneNegotiateExtVersion
The phoneNegotiateExtVersion
function allows an application to negotiate an extension version to use with
the specified phone device. This operation need not be called if the
application does not support extensions.
LONG phoneNegotiateExtVersion(
HPHONEAPP hPhoneApp, |
|
DWORD dwDeviceID, |
|
DWORD dwAPIVersion, |
|
DWORD dwExtLowVersion, |
|
DWORD dwExtHighVersion, |
|
LPDWORD lpdwExtVersion |
|
); |
|
Parameters
hPhoneApp
The handle to
the application's registration with TAPI.
dwDeviceID
The phone
device to be queried.
dwAPIVersion
The API
version number that was negotiated for the specified phone device using phoneNegotiateAPIVersion
dwExtLowVersion
The least
recent extension version of the Extension ID returned by phoneNegotiateAPIVersion
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 phoneNegotiateAPIVersion
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 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:
PHONEERR_INVALAPPHANDLE,
PHONEERR_OPERATIONFAILED, PHONEERR_BADDEVICEID, PHONEERR_OPERATIONUNAVAIL,
PHONEERR_NODRIVER, PHONEERR_NOMEM, PHONEERR_INCOMPATIBLEAPIVERSION,
PHONEERR_RESOURCEUNAVAIL, PHONEERR_INCOMPATIBLEEXTVERSION,
PHONEERR_UNINITIALIZED, PHONEERR_INVALPOINTER, PHONEERR_NODEVICE.
Remarks
The function phoneNegotiateAPIVersion
is used to negotiate the API version number to use. It returns the extension ID
supported by the phone device, or zeros if no extensions are provided.
If the
application wants to use the extensions defined by the returned Extension ID,
it must call phoneNegotiateExtVersion to negotiate the extension version
to use.
Use phoneInitializeEx
to determine the number of phone devices present in the system. The device ID
specified by dwDeviceID varies from zero to one less than the number of
phone devices present.
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