Поделиться через


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

Функция lineTranslateAddress преобразует указанный адрес в другой формат.

Синтаксис

LONG lineTranslateAddress(
  HLINEAPP              hLineApp,
  DWORD                 dwDeviceID,
  DWORD                 dwAPIVersion,
  LPCSTR                lpszAddressIn,
  DWORD                 dwCard,
  DWORD                 dwTranslateOptions,
  LPLINETRANSLATEOUTPUT lpTranslateOutput
);

Параметры

hLineApp

Дескриптор, возвращаемый lineInitializeEx. Если приложение TAPI 2.x еще не вызывало функцию lineInitializeEx , оно может задать для этого параметра значение NULL. Приложения TAPI 1.4 по-прежнему должны сначала вызывать lineInitialize .

dwDeviceID

Идентификатор устройства линии, на котором должен быть набран вызов, чтобы к процессу перевода можно было применить различные варианты процедур набора номера в разных строках.

dwAPIVersion

Самая высокая версия TAPI, поддерживаемая приложением (необязательно значение, согласованное lineNegotiateAPIVersion на определенном устройстве линии).

lpszAddressIn

Указатель на строку, завершающуюся нулевым значением, которая содержит адрес сведений, которые должны быть извлечены для перевода. Должен быть в каноническом формате адреса или в произвольной строке набираемых цифр (неканонических). Этот параметр не должен иметь значение NULL. Если AddressIn содержит вложенную адресную строку или поле имени или дополнительные адреса, отделенные от первого адреса символами CR и LF, преобразуется только первый адрес.

dwCard

Кредитные карта, которые будут использоваться для набора номера. Этот параметр действителен, только если бит CARDOVERRIDE задан в dwTranslateOptions. Этот параметр задает постоянный идентификатор записи карточки в разделе [Cards] реестра (полученного из lineTranslateCaps), который следует использовать вместо PreferredCardID , указанного в определении CurrentLocation. Это не приводит к изменению параметра PreferredCardID текущей записи Location в реестре; переопределение применяется только к текущей операции преобразования. Этот параметр игнорируется, если бит CARDOVERRIDE не задан в dwTranslateOptions.

dwTranslateOptions

Связанные операции, выполняемые до преобразования адреса в коммутируемую строку. Этот параметр использует одну из констант LINETRANSLATEOPTION_.

Если вы задали бит LINETRANSLATEOPTION_CANCELCALLWAITING, рекомендуется также задать бит LINECALLPARAMFLAGS_SECURE в элементе dwCallParamFlags структуры LINECALLPARAMS (передается в lineMakeCall через параметр lpCallParams ). Это не позволит устройству линии использовать набираемые цифры для подавления прерываний вызовов.

lpTranslateOutput

Указатель на область памяти, выделенную приложением, содержащую выходные данные операции преобразования типа LINETRANSLATEOUTPUT. Перед вызовом lineTranslateAddress приложение должно задать элемент dwTotalSize этой структуры, чтобы указать объем памяти, доступной TAPI для возврата информации.

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

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

LINEERR_BADDEVICEID, LINEERR_INVALPOINTER, LINEERR_INCOMPATIBLEAPIVERSION, LINEERR_NODRIVER, LINEERR_INIFILECORRUPT, LINEERR_NOMEM, LINEERR_INVALADDRESS, LINEERR_OPERATIONFAILED, LINEERR_INVALAPPHANDLE, LINEERR_RESOURCEUNAVAIL, LINEERR_INVALCARD, LINEERR_STRUCTURETOOSMALL LINEERR_INVALPARAM.

Требования

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

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

Справочник по базовым службам телефонии

Канонические адреса

LINECALLPARAMS

LINETRANSLATEOUTPUT

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

Согласование версий TAPI

lineInitializeEx

lineNegotiateAPIVersion