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