Thank you for helping, Mr. Roberts!
I assume you mean IRP_MJ_CREATE.Yes, sure, I was wrong.
Did you also changeMF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE_VIDCAP_SYMBOLIC_LINK to
I usually register my own device interface in the audio driverAre you talking about the IoRegisterDeviceInterface function?
Oleg Vorobiov wrote:
I need help in the implementation of the virtual audio driver with the
goal of providing a virtual microphone which receives data from the
I started from Microsoft Virtual Audio Device Driver Sample (MSVAD),
project - 'micarray', with the following modifications:
1. Added handler for IRP_MJ_OPEN for the driver object
I assume you mean IRP_MJ_CREATE.
2. Added handler for IRP_MJ_WRITE for the driver object
Next, I was tried to get a symlink to the virtual device using Microsoft
Media Foundation like described in this article -
(I changed MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE_VIDCAP_GUID to
MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE_AUDCAP_GUID), but I got an empty string.
Did you also change
MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE_AUDCAP_SYMBOLIC_LINK? With AUDCAP_GUID,
that gets me a list of the symbolic links for my audio devices:
Name: Microphone (3- Hercules Dualpix Exchange Mic)
Name: Microphone (2- Samson Go Mic Connect)
HOWEVER, the symbolic links you get there are to the Audio Engine, not to
the actual device. I assume that you are trying to open your device
directly, in order to access your back door interface, and not to access it
as a regular audio device. I don't think these symbolic links will do that.
It is possible to use CM_Get_Device_Interface_List to get direct symbolic
links to the device file, using the audio device interface. I usually
register my own device interface in the audio driver, so I can assign a
suffix reference string, which allows me to tell within the IRP_MJ_CREATE
handler whether it is my backdoor app opening the device, or the audio
Tim Roberts, timr@xxxxxxxxx
Providenza & Boekelheide, Inc.