You call SetupDiGetDeviceInterfaceDetail. That fills in an SP_DEVICE_INTERFACE_DETAIL_DATA structure that includes a DevicePath member. That member is a string which is the file name you give to CreateFile. >> ... there is already a >> well-defined mechanism for sending custom requests to KS drivers. > What is the well-defined mechanism for sending custom requests to KS > drivers? Create a custom KS property set with as many members as you need, just like the standard properties (such as volume). You then use the IKsControl or IKsProperty interfaces to send IOCTL_KS_PROPERTY requests into the driver, which the standard port class dispatcher already knows how to handle. -- Tim Roberts, timr@xxxxxxxxx Providenza & Boekelheide, Inc. ****************** WDMAUDIODEV addresses: Post message: mailto:wdmaudiodev@xxxxxxxxxxxxx Subscribe: mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=subscribe Unsubscribe: mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=unsubscribe Moderator: mailto:wdmaudiodev-moderators@xxxxxxxxxxxxx URL to WDMAUDIODEV page: http://www.wdmaudiodev.com/