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


Функция 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

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

LINEEXTENSIONID

Дополнительные функции линейной службы

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

VARSTRING