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

Функция lineGetIcon позволяет приложению получить значок устройства для конкретного устройства (или конкретного поставщика) для отображения пользователю.

Синтаксис

LONG lineGetIconW(
  DWORD   dwDeviceID,
  LPCWSTR lpszDeviceClass,
  LPHICON lphIcon
);

Параметры

dwDeviceID

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

lpszDeviceClass

Указатель на строку null-terminated, которая определяет имя класса устройства. Этот класс устройства позволяет приложению выбрать определенный вложенный значок, применимый к этому классу устройства. Этот параметр является необязательным и может быть оставлен null или пуст, в этом случае будет выбран значок верхнего уровня, связанный с устройством линии, а не заданным устройством потока мультимедиа.

lphIcon

Указатель на расположение памяти, в котором возвращается дескриптор значка.

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

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

LINEERR_BADDEVICEID, LINEERR_OPERATIONFAILED, LINEERR_INVALPOINTER, LINEERR_RESOURCEUNAVAIL, LINEERR_INVALDEVICECLASS, LINEERR_UNINITIALIZED, LINEERR_NOMEM, LINEERR_NODEVICE.

Замечания

Функция lineGetIcon приводит к тому, что поставщик возвращает дескриптор (в lphIcon) ресурсу значка (полученному из LoadIcon), связанному с указанной строкой. Дескриптор значка предназначен для ресурса, связанного с поставщиком. Приложение должно использовать CopyIcon, если он хочет ссылаться на значок после выгрузки поставщика, что вряд ли произойдет до тех пор, пока приложение открыто строкой.

Параметр lpszDeviceClass позволяет поставщику возвращать различные значки на основе типа службы, на которую ссылается вызывающий объект. Разрешенные строки совпадают с lineGetID. Например, если строка поддерживает API Comm, передав COMM как lpszDeviceClass, поставщик возвращает значок, связанный специально с функциями устройства Comm поставщика услуг. Параметры "tapi/line", "" или NULL можно использовать для запроса значка службы строки.

Для приложений, использующих версию API до версии 2.0, если поставщик не возвращает значок (независимо от того, является ли данный класс устройства недопустимым или поставщик не поддерживает значки), TAPI заменяет универсальный значок устройства линии телефонии. Для приложений, использующих API версии 2.0 или более поздней, TAPI заменяет значок строки по умолчанию, только если параметр lpszDeviceClass имеет значение "tapi/line", "" или NULL. Для любого другого класса устройства, если указанный класс устройства недопустим или поставщик не поддерживает значки для класса, lineGetIcon возвращает LINEERR_INVALDEVICECLASS.

Заметка

Заголовок tapi.h определяет lineGetIcon как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.

Требования

Требование Ценность
целевая платформа Виндоус
заголовка tapi.h
библиотеки Tapi32.lib
DLL Tapi32.dll

См. также

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

Обзор TAPI 2.2

lineGetID