Функция lineGetAppPriority (tapi.h)
Функция lineGetAppPriority позволяет приложению определить, находится ли оно в списке приоритетов передачи для определенного режима мультимедиа или режима запроса вспомогательной телефонии, и, если да, его положение в списке приоритетов.
Синтаксис
LONG lineGetAppPriority(
LPCSTR lpszAppFilename,
DWORD dwMediaMode,
LPLINEEXTENSIONID lpExtensionID,
DWORD dwRequestMode,
LPVARSTRING lpExtensionName,
LPDWORD lpdwPriority
);
Параметры
lpszAppFilename
Указатель на строку, содержащую имя файла исполняемого модуля приложения без данных каталога. В API версии 2.0 или более поздней параметр может иметь формат длинного имени файла, из которого формат имени файла 8.3 является правильным подмножеством. Длинные имена файлов, в отличие от имен файлов версии 8.3, сохраняют регистр. Ни в том, ни в таком формате имени файла регистр не учитывается. Дополнительные сведения см. в разделе Соглашения об именах файлов. В версиях API, предшествующих 2.0, параметр должен указывать имя файла в формате 8.3; Нельзя использовать длинные имена файлов.
dwMediaMode
Режим мультимедиа, для которого должны быть получены данные о приоритете. Значение может быть одной из констант LINEMEDIAMODE_; Может быть включен только один бит. Значение 0 следует использовать при проверке приоритета приложения для запросов вспомогательной телефонии.
lpExtensionID
Указатель на структуру типа LINEEXTENSIONID. Этот параметр не учитывается.
dwRequestMode
Условия для этого параметра: если параметр dwMediaMode равен нулю, этот параметр указывает режим запроса вспомогательной телефонии, приоритет которого необходимо проверить. Это должно быть LINEREQUESTMODE_MAKECALL. Этот параметр игнорируется, если параметр dwMediaMode не равен нулю.
lpExtensionName
Этот параметр не учитывается.
lpdwPriority
Указатель на расположение памяти размера DWORD, в которое TAPI записывает приоритет приложения для указанного носителя или режима запроса. Значение 0 возвращается, если приложение не находится в списке сохраненных приоритетов и в настоящее время не имеет открытого линейного устройства с запрошенным владением для указанного режима мультимедиа или зарегистрированным в указанном режиме запроса.
В версиях API, предшествующих 2.0, возвращается значение –1 (0xFFFFFFFF), если приложение открыто для указанного режима мультимедиа или зарегистрировано для указанных запросов, но приложение отсутствует в списке сохраненных приоритетов; то есть он находится только в списке временных приоритетов. В API версии 2.0 или более поздней возвращается значение 0, указывающее на это условие.
В противном случае значение указывает позицию приложения в списке; 1 — наивысший приоритет, а увеличивающиеся значения, указывающие на уменьшение приоритета.
Возвращаемое значение
Возвращает ноль, если запрос выполнен успешно, или отрицательный номер ошибки при возникновении ошибки. Возможные возвращаемые значения:
LINEERR_INIFILECORRUPT, LINEERR_INVALREQUESTMODE, LINEERR_INVALAPPNAME, LINEERR_NOMEM, LINEERR_INVALMEDIAMODE, LINEERR_OPERATIONFAILED, LINEERR_INVALPOINTERLINEERR_STRUCTURETOOSMALL.
Комментарии
Если возвращается LINEERR_INVALMEDIAMODE, значение, указанное в dwMediaMode , не равно нулю, не является допустимым режимом расширенного носителя и не одной из констант LINEMEDIAMODE_ или в значении параметра не содержится более одного бита.
Требования
Требование | Значение |
---|---|
Целевая платформа | Windows |
Header | tapi.h |
Библиотека | Tapi32.lib |
DLL | Tapi32.dll |