在 Windows Vista 及更高版本中, KSPROPERTY_JACK_DESCRIPTION 属性提供有关音频适配器中子节点上的插孔或插孔集合的信息。 (在此上下文中,术语 子组 是 KS 筛选器的同义词。属性值是一个或多个 KSJACK_DESCRIPTION 结构的数组。 每个结构描述插孔的颜色、连接线类型和物理位置。 此外,结构包含一个 IsConnected 成员,如果麦克风或耳机等音频终结点设备插入到插孔中,则为 TRUE,如果插孔为空,则为 FALSE。 若要为 IsConnected 提供 up-to日期值,动态子应用的适配器驱动程序依赖于音频硬件的插孔状态检测功能。 对于静态子系统(没有插孔状态检测), IsConnected 成员应始终为 TRUE。 有关详细信息,请参阅 Jack Description 属性。
当用户将插头插入动态子设备的插孔时,适配器驱动程序应调用 PcRegisterSubdevice 函数来注册子设备。 当子设备保持注册状态时,如果适配器驱动程序收到一个包含对子设备的KSPROPERTY_JACK_DESCRIPTION请求的IOCTL,驱动程序应将属性值的IsConnected成员设置为TRUE。
当用户从动态子设备的插孔中拔出插头时,适配器驱动程序应调用 IUnregisterSubdevice::UnregisterSubdevice 方法以删除子设备的注册。 虽然子设备未注册,但如果适配器驱动程序收到包含针对该子设备的KSPROPERTY_JACK_DESCRIPTION请求的IOCTL,驱动程序应将属性值的IsConnected成员设置为FALSE。