This is the most ugliest beast I've come across.
Trying to implement parts of the Kernel Streaming (ks) stuff. I decided to start with portcls.sys.
So far, it appears ks.h (the Kernel Streaming main header) isn't present in our include files (or w32api) and the official MS DDK version is 100KB + so that's a bit of a knock-out already.
Anyway I had a poke around and stubbed a lot of the main portcls.sys functions. But I have no idea what I'm doing right now so it's pointless me trying.
It appears to be built on COM - the MSDN documents describe "Kernel-mode COM" in the Audio and Video section.
Obviously the standard COM calls can't be used in kernel-mode. And I found in kcom.h some declarations for functions such as KoCreateInstance (kernel mode version of CoCreateInstance?) yet I cannot find any references to it on Google.
The sample drivers are written in C++, and appear to rely on kcom.h's C++ classes to get things done.
There's just not a lot I can do as the foundation isn't even there for me to start implementing Kernel Streaming.
And I have *no* idea how to use COM. So far it looks really really ugly.
Can someone give me a hand?
-Andrew