Функция XcvOpenPort (winsplp.h)

Функция XcvOpenPort сервера мониторинга портов dll открывает порт для операций конфигурации.

Синтаксис

BOOL XcvOpenPort(
  LPCWSTR     pszObject,
  ACCESS_MASK GrantedAccess,
  PHANDLE     phXcv
);

Параметры

pszObject

Предоставленный вызывающим элементом указатель на строку, представляющую имя порта. Может иметь значение NULL, и большинству мониторов этот параметр не нужен.

GrantedAccess

Поставляемая вызывающей ACCESS_MASK структура, содержащая доступ, предоставленный пользователю во время вызова библиотеки DLL пользовательского интерфейса монитора печати к функции OpenPrinter очереди печати. См. следующий раздел Примечаний.

phXcv

Поставляемый вызывающим указателем на расположение для получения дескриптора порта, предоставленного функцией.

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

Если операция выполнена успешно, функция должна вернуть значение TRUE. В противном случае он должен вернуть значение FALSE.

Комментарии

Библиотеки DLL сервера мониторинга портов необходимы для определения функции XcvOpenPort и включения ее адреса в структуру MONITOR2 .

Функция OpenPrinter очереди (описанная в документации по Microsoft Windows SDK) вызывает XcvOpenPort, если указанное имя принтера содержит строки XcvPort или XcvMonitor. Дополнительные сведения см. в разделе AddPortUI.

Функция XcvOpenPort должна открыть порт в целях настройки. Эта операция может состоять только из хранения входных аргументов для последующего использования в XcvDataPort. Функция должна возвращать дескриптор хранимой информации в расположении, на который указывает phXcv. Этот дескриптор возвращается вызывающей функции OpenPrinter и затем получается в качестве входного аргумента для XcvDataPort.

Функция должна сохранить предоставленную маску доступа. Позже при вызове функции XcvDataPort серверной библиотеки DLL предоставленный доступ следует сравнить с SERVER_ACCESS_ADMINISTER и в случае сбоя сравнения XcvDataPort должен вернуть ERROR_ACCESS_DENIED.

Требования

Требование Значение
Целевая платформа Персональный компьютер
Верхняя часть winsplp.h (включая Winsplp.h)
Библиотека NtosKrnl.exe

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

InitializePrintMonitor2

XcvClosePort

XcvDataPort

AddPortUI