Hi, Thanks a lot, Scott! Your pointers to specific files helped me the most. I had also seen the msvad directory and had seen some of it, but I somehow ended up thinking that it was not what I needed. I compiled and installed the MSVAD's simple driver(in Windows Server 2003). There is a bug in that driver, but since the code is illustrative only, I am not going to bother. However, one problem that I am facing is that the driver is not enumerated in a terminal services session. I use waveOutGetDevCaps() to enumerate the audio playback devices. Any idea what is going on ? (Note that this problem does not appear when I login to the machine directly). Regards, Shree Kumar Scott Lundgren wrote: > > Shree, > > Take a look at the MSVAD (Microsoft Virtual Audio Device) sample in recent > releases of the DDK. It can be found at src\wdm\audio\msvad. In > particular, take a look at savedata.cpp, basedma.cpp, and basewave.cpp. > > MSVAD is a virtual output device; it appears as a standard audio device to > Windows applications. However, rather than talking with hardware, raw data > is written to disk. > > The framework is in place (see CSaveData::CopyTo) to use this as an input > (i.e. a microphone). > > The MSVAD.inf file is a good starting point for installation; it works as is > in the DDK. Some pointers are included in readme.htm in the audio\msvad > directory. You can point the Add New Hardware wizard to this inf, or you > can use it as a baseline for the SetupDiXXX() WinAPIs. You'll probably want > to add a hardware ID to the INF; see Chapter 15 in Walter Oney's > _Programming the Microsoft Windows Driver Model_ > > Scott > > > > >Hi all, > > > >I need to write a virtual driver which acts like a microphone. > >Something like daemon tools, but which provides a virtual > >microphone. > > > >This is for providing interactive-input to an application > >which uses audio input (I don't have any control > >over the program & don't have it's source code), and provides > >a selector for which device to use for input. So if my > >driver appears in the list, I can get input from it. > > > >What sort of driver must I write? > >How do I tell windows that the hardware is present when it is > >actually not? Is it possible to load the driver before running > >the application & unload it after the app exits? > >Also, any idea how this driver can be loaded into a Terminal > >Services session? > > > >My platform is Windows 2000 and above. I am a newbie to > >driver development but have read some of the > >DDK material. > > > >Any suggestions/hints/links will be much appreciated! > > > >Thanks in advance, > > > >- Shree Kumar > >****************** > > > >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.de/ > > > > _________________________________________________________________ > Frustrated with dial-up? Get high-speed for as low as $29.95/month > (depending on the local service providers in your area). > https://broadband.msn.com > > ****************** > > 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.de/ ****************** 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.de/