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


Функция KsCreatePin (ks.h)

Функция KsCreatePin передает запрос на подключение к устройству, создавая экземпляр пин-кода. Эту функцию можно вызывать только в PASSIVE_LEVEL для клиентов в режиме ядра.

Синтаксис

KSDDKAPI NTSTATUS KsCreatePin(
  [in]  HANDLE         FilterHandle,
  [in]  PKSPIN_CONNECT Connect,
  [in]  ACCESS_MASK    DesiredAccess,
  [out] PHANDLE        ConnectionHandle
);

Параметры

[in] FilterHandle

Задает дескриптор фильтра, инициирующего запрос на создание, и место, где будет происходить подключение.

[in] Connect

Указатель на структуру KSPIN_CONNECT, содержащую параметры запрошенного подключения. За этим следует в памяти структуре данных KSDATAFORMAT, описывающей формат данных, запрошенный для подключения.

[in] DesiredAccess

Указывает доступ, необходимый для пин-кода. Обычно это GENERIC_READ или GENERIC_WRITE. Для потока данных в закрепление этого значения должно быть задано значение GENERIC_WRITE, а для передачи данных из пин-кода необходимо задать значение GENERIC_READ независимо от метода связи.

[out] ConnectionHandle

Указывает переданный дескриптор подключения. Подпрограмма заполняет этот дескриптор объектом файла созданного соединения. Затем это значение можно использовать для отключения функции CloseHandle.

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

Функция KsCreatePin возвращает STATUS_SUCCESS, если подключение выполнено успешно, или возвращает ошибку, если подключение завершилось ошибкой. Кроме того, этот код ошибки Win32 (из Winerror.h) можно вернуть:

Замечания

Подпрограмма отправляет IRP_MJ_CREATE запрос драйверу. Драйвер принимает запрос только в том случае, если интерфейс, средний и формат данных совместимы.

Если Connect->PinToHandleNULL, KsCreatePin создает пин-код вызывающего объекта, который может использовать для отправки запросов драйверу потоковой передачи, указанному в Connect->FilterHandle. Connect—>PinId определяет тип пин-кода создаваемого пин-кода.

Требования

Требование Ценность
целевая платформа Всеобщий
заголовка ks.h (include Ks.h)
библиотеки Ks.lib

См. также

IRP_MJ_CREATE

KSDATAFORMAT

KSPIN_CONNECT