IPortDMus::RegisterServiceGroup 方法 (dmusicks.h)

方法 RegisterServiceGroup 向 DMus 端口驱动程序注册服务组。

语法

void RegisterServiceGroup(
  [in] PSERVICEGROUP ServiceGroup
);

参数

[in] ServiceGroup

指向 IServiceGroup 对象的指针。 这是要注册的服务组。

返回值

备注

微型端口驱动程序调用 方法, RegisterServiceGroup 将服务组注册到端口驱动程序 (IServiceGroup 对象) 。 端口驱动程序可以将) 的 IServiceSink 对象 (一个或多个服务接收器插入此服务组中。 微型端口驱动程序通过在每次发生中断时调用 IPortDMus::Notify) 向服务组发送通知 (。 收到通知后,服务组 (DPC) 计划延迟的过程调用。 DPC 循环访问服务组中的所有服务接收器,并向每个接收器发送通知。

微型端口驱动程序通常在执行其 IMiniportDMus::Init 方法期间调用 RegisterServiceSink。 此调用的目的是尽早将服务组注册到端口驱动程序,以便在启用中断后立即开始处理中断。 请注意, Init 方法输出的服务组在从 Init 方法返回之前对端口驱动程序不可用。

如果微型端口驱动程序调用 RegisterServiceSink,则微型端口驱动程序传递给 RegisterServiceSink 方法的服务组应与微型端口驱动程序通过其 Init 方法输出的服务组相同。

IMiniportDMus::Init 返回后,典型的微型端口驱动程序无需进一步调用 RegisterServiceSink

有关显示微型端口驱动程序如何从其 IMiniportDMus::Init 方法中调用RegisterServiceSink的代码示例,请参阅 Microsoft Windows 驱动程序工具包 (WDK) 中的 DMusUART 示例音频驱动程序。

pServiceGroup 参数遵循 COM 对象的引用计数约定

要求

要求
目标平台 桌面
标头 dmusicks.h (包括 Dmusicks.h)
IRQL PASSIVE_LEVEL

另请参阅

IMiniportDMus::Init

IPortDMus

IPortDMus::Notify

IServiceGroup

IServiceSink