Does anyone know a way to call ring3 APIs from VxD??
Posted on 2003-01-28 13:56:34 by slonik
VxD is not intended to acces ring3 APIs :)

Well you should have a companion ring3 win32api applications and use some custom IOCTL code to establish a line of communication between VxD and ring3 application.

This is actually the intended mode of operation: the VxD will do the nasty hardware related work as fast as it can an using a little system resources as possible (memory and cpu time) and will relay on a companion ring3 applicatio n for an front end and doing more complicate and/or longer tasks.

However there are some counterpart functions for the ring3 api in kernel/vxd mode that can be used from ring0 mode, like functions for allocating memory, open/read/write/close files etc

Check the DDK for those functions
Posted on 2003-01-28 17:32:44 by BogdanOntanu
There are also functions, that can only be called at Application Time, such as _SHELL_CallDll (works only with 16-bit dlls) and _SHELL_ShellExecute, that can be used to interact with ring 3, but it's best to do all ring 3 stuff in the application or dll and ring 0 things in the VXD.

Posted on 2003-01-29 03:53:36 by Stealth