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 创建一个 pin,调用方可以使用该图钉将请求发送到 Connect中指定的流式处理驱动程序 ->FilterHandle。 Connect->PinId 确定要创建的引脚的引脚类型。
要求
要求 | 价值 |
---|---|
目标平台 | 普遍 |
标头 | ks.h (包括 Ks.h) |
库 | Ks.lib |