Page 1 of 1

diff between dll and driver files

Posted: Mon Aug 25, 2008 11:13 pm
by crchemist
Can someone explain me difference between common somedll.obj file and somedriver.obj. As i see - the only one difference is that code from somedriver.obj executed in ring0 - is it right? And other question - can i load 'somefunction' that is located in somedll.obj from somedriver.obj with

Code: Select all

mov     eax, 68
mov     ebx, 19
mov     ecx, dll_name
?

Re: diff between dll and driver files

Posted: Mon Aug 25, 2008 11:18 pm
by crchemist
i have somedll.obj with 'func1', 'func2'. I want load these fuctions from somedriver.obj. And i want to execute 'func1', 'func2' in ring0. How can i do this?

Re: diff between dll and driver files

Posted: Thu Aug 28, 2008 8:49 am
by mike.dld
I remember kernel using libini (or libio?) to read something. Maybe this was just an experiment, but it worked. Whether you can or can't use somedll.obj from driver depends on how this DLL was written. If you're just asking for such possibility then yes, it's possible.

EDIT: libini is used now in kernel (/imports.inc, /core/conf_lib.inc, /fs/parse_fn.inc). The same DLL is also used by programs. The only difference in using it from ring0/ring3 is parameters passed to lib_init function (pointers to memory allocation/deallocation functions and DLL loading function).