Thanks Tim & Matthew for responding. In reference to NTDDI_VERSION >= NTDDI_WINXP I'm writing a user mode application that us attempting to access special features of an audio driver. Is NTDDI_VERSION relevant for user mode applications? The driver I'm trying to reach targets XP and above, though.
I tried ksproxy.h as well, but it doesn't build. I kludged ksproxy.h to get rid of some defines and it built, but it still doesn't give me a good pointer when I run it. Do I have to explicitly expose IKsControl to user mode applications in my driver?
Mark Walker wrote:... Specifically, I'm having trouble with One you have an IBaseFilter, you just fetch an IKsControl interface from it: CComQIPtr<IKsControl> pKsControl( myFilter ); The problem is that VC++ 2008 doesn't include IKsControl properly, so it doesn't build. If I use: #include "ks.h" it still tells me that IKsControl is undefined.It should be in there, but it's also present in ksproxy.h, which sometimes has fewer conflicts with other include files.hr = pBaseFilter->QueryInterface(IID_IKsControl, (void **) &pControl); returns that the interface doesn't exist. I'm not using smart pointers because I'm using VC++ express, no ATL.Ouch. However, even without ATL, you still have _com_ptr_t available to you, which has many of the same capabilities.
****************** 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/