Функция lineGetID (tapi.h)
Функция lineGetID возвращает идентификатор устройства для указанного класса устройства, связанного с выбранной строкой, адресом или вызовом.
Синтаксис
LONG lineGetID(
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, wave, MIDI, телефон, линия или NDIS), связанных с вызовом, адресом или строкой. Затем этот идентификатор можно использовать с соответствующим API (например, телефон, MIDI, wave) для выбора соответствующего устройства мультимедиа, связанного с указанным вызовом.
Имена классов устройств см. в разделе Классы устройств TAPI .
Поставщик, определяющий режим мультимедиа для конкретного устройства, также должен определить соответствующий API для конкретного устройства (собственный) для управления устройствами режима мультимедиа. Чтобы избежать конфликтов в именах классов устройств, назначенных независимо от разных поставщиков, поставщик должен выбрать имя, которое однозначно идентифицирует как поставщика, так и тип носителя, после него. Например, "intel/video".
Требования
Требование | Значение |
---|---|
Целевая платформа | Windows |
Header | tapi.h |
Библиотека | Tapi32.lib |
DLL | Tapi32.dll |