[ros-dev] Kernel-mode COM required for Kernel Streaming (ks.sys)

Andrew "Silver Blade" Greenwood lists at silverblade.co.uk
Mon Sep 12 02:10:19 CEST 2005


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


More information about the Ros-dev mailing list