Функция phoneNegotiateAPIVersion (tapi.h)

PhoneNegotiateAPIVersion позволяет приложению согласовывать версию API, используемую для указанного телефонного устройства.

Синтаксис

LONG phoneNegotiateAPIVersion(
  HPHONEAPP          hPhoneApp,
  DWORD              dwDeviceID,
  DWORD              dwAPILowVersion,
  DWORD              dwAPIHighVersion,
  LPDWORD            lpdwAPIVersion,
  LPPHONEEXTENSIONID lpExtensionID
);

Параметры

hPhoneApp

Обработка регистрации приложения с помощью TAPI.

dwDeviceID

Идентификатор запрашиваемого телефонного устройства.

dwAPILowVersion

Последняя версия API, с которым соответствует приложение. Слово высокого порядка — основной номер версии, слово нижнего порядка — дополнительный номер версии.

dwAPIHighVersion

Последняя версия API, с которыми совместимо приложение. Слово высокого порядка — основной номер версии, слово нижнего порядка — дополнительный номер версии.

lpdwAPIVersion

Указатель на DWORD , в котором будет возвращен согласованный номер версии API. Если согласование выполняется успешно, это число находится в диапазоне dwAPILowVersion до dwAPIHighVersion.

lpExtensionID

Указатель на структуру типа PHONEEXTENSIONID. Если поставщик услуг для указанного параметра dwDeviceID поддерживает расширения конкретного поставщика, эта структура заполняется идентификатором этих расширений при успешном согласовании. Эта структура содержит все нули, если строка не предоставляет расширений. Приложение может игнорировать возвращаемый параметр, если оно не использует расширения.

Возвращаемое значение

Возвращает ноль, если запрос выполнен успешно, или отрицательный номер ошибки при возникновении ошибки. Возможные возвращаемые значения:

PHONEERR_INVALAPPHANDLE, PHONEERR_OPERATIONFAILED, PHONEERR_BADDEVICEID, PHONEERR_OPERATIONUNAVAIL, PHONEERR_NODRIVER, PHONEERR_NOMEM, PHONEERR_INVALPOINTER, PHONEERR_RESOURCEUNAVAIL, PHONEERR_INCOMPATIBLEAPIVERSION, PHONEERR_UNINITIALIZED PHONEERR_NODEVICE.

Комментарии

Функция phoneNegotiateAPIVersion используется для согласования номера версии API для использования с указанным телефонным устройством. Он возвращает идентификатор расширения, поддерживаемый телефонным устройством, или нули, если расширения не указаны.

Если приложение хочет использовать расширения, определенные возвращенным идентификатором расширения, оно должно вызвать phoneNegotiateExtVersion для согласования используемой версии расширения.

Используйте phoneInitializeEx для определения количества телефонных устройств, присутствующих в системе. Идентификатор устройства, указанный параметром dwDeviceID , варьируется от нуля до одного меньше числа присутствующих телефонных устройств.

Согласованный номер версии API — это номер, под которым может работать TAPI. Если диапазоны версий не перекрываются, версии приложения, API или поставщика услуг несовместимы и возвращается ошибка.

Требования

Требование Значение
Целевая платформа Windows
Header tapi.h
Библиотека Tapi32.lib
DLL Tapi32.dll

См. также раздел

PHONEEXTENSIONID

Дополнительные функции телефонной службы

Обзор справочника по TAPI 2.2

Управление версиями TAPI

phoneInitializeEx

phoneNegotiateExtVersion