Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Функция lineGetID возвращает идентификатор устройства для указанного класса устройства, связанного с выбранной строкой, адресом или вызовом.
Синтаксис
LONG lineGetIDA(
HLINE hLine,
DWORD dwAddressID,
HCALL hCall,
DWORD dwSelect,
LPVARSTRING lpDeviceID,
LPCSTR lpszDeviceClass
);
Параметры
hLine
Дескриптор на открытое устройство строки.
dwAddressID
Адрес на заданном устройстве открытой строки. Идентификатор адреса постоянно связан с адресом; Идентификатор остается постоянным в обновлениях операционной системы.
hCall
Обработка вызова.
dwSelect
Указывает, связан ли запрошенный идентификатор устройства со строкой, адресом или одним вызовом. Этот параметр использует только одну из LINECALLSELECT_ констант.
lpDeviceID
Указатель на расположение памяти типа VARSTRING, где возвращается идентификатор устройства. После успешного завершения запроса это расположение заполняется идентификатором устройства. Формат возвращаемой информации зависит от метода, используемого API класса устройства для именования устройств. Перед вызовом lineGetIDприложение должно задать dwTotalSize элемент этой структуры, чтобы указать объем памяти, доступной TAPI для возврата сведений.
lpszDeviceClass
Указатель на строку, завершающуюся значением NULL, которая указывает класс устройства устройства, идентификатор которого запрашивается. Допустимые строки класса устройства — это те, которые используются в SYSTEM. Раздел INI для идентификации классов устройств.
Возвращаемое значение
Возвращает ноль, если запрос выполнен успешно или отрицательный номер ошибки, если возникает ошибка. Возможные возвращаемые значения:
LINEERR_INVALLINEHANDLE, LINEERR_NOMEM, LINEERR_INVALADDRESSID, LINEERR_OPERATIONUNAVAIL, LINEERR_INVALCALLHANDLE, LINEERR_OPERATIONFAILED, LINEERR_INVALCALLSELECT, LINEERR_INVALDEVICECLASS, LINEERR_RESOURCEUNAVAIL, LINEERR_INVALPOINTER, LINEERR_STRUCTURETOOSMALL, LINEERR_NODEVICE, LINEERR_UNINITIALIZED.
Замечания
Функцию lineGetID можно использовать для получения идентификатора устройства строки при указании дескриптора строки. Это полезно после открытия lineOpen с помощью LINEMAPPER в качестве идентификатора устройства для определения реального идентификатора устройства открытой строки. Эту функцию также можно использовать для получения идентификатора устройства телефона или устройства мультимедиа (для таких классов устройств, как COM, волна, MIDI, телефон, линия или NDIS), связанные с вызовом, адресом или строкой. Затем этот идентификатор можно использовать с соответствующим API (например, телефоном, MIDI, волной), чтобы выбрать соответствующее устройство мультимедиа, связанное с указанным вызовом.
См. классы устройств TAPI для имен классов устройств.
Поставщик, определяющий режим мультимедиа для конкретного устройства, также должен определить соответствующий API для конкретного устройства (частного) для управления устройствами в режиме мультимедиа. Чтобы избежать конфликтов в именах классов устройств, назначенных независимо от разных поставщиков, поставщик должен выбрать имя, которое однозначно идентифицирует поставщика и, следуя за ним, тип носителя. Например: intel/video.
Заметка
Заголовок tapi.h определяет lineGetID как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
| Требование | Ценность |
|---|---|
| целевая платформа | Виндоус |
| заголовка | tapi.h |
| библиотеки |
Tapi32.lib |
| DLL | Tapi32.dll |
См. также
Справочник по службам базовой телефонии
Обзор