Does Win 7 support kernel mode dlls? I found an older NT Insider article about them but wanted to make sure it is still viable.
Yes, it does . All port drivers are km dlls, so it kind of has to be supported :).
d
dent from a phine with no keynoard
-----Original Message-----
From: xxxxx@yahoo.com
Sent: Friday, April 01, 2011 10:00 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] Kernel mode dlls
Does Win 7 support kernel mode dlls? I found an older NT Insider article about them but wanted to make sure it is still viable.
NTDEV is sponsored by OSR
For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars
To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer
ok, i am trying to reproduce one based on this example: http://www.osronline.com/article.cfm?id=171
is there a better example in the latest WDK?
xxxxx@yahoo.com wrote:
ok, i am trying to reproduce one based on this example: http://www.osronline.com/article.cfm?id=171
is there a better example in the latest WDK?
No, but here’s another example, written by someone very dear to me:
http://www.wd-3.com/archive/KernelDlls.htm
–
Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.
sounds like a cool guy! :). thanks i just got mine built as well. turns out the builder doesn’t like an empty exports section. i will review this example to make sure i get mine set up correctly.
thanks
Let’s take a step back for a second. What led you to believe you needed a KM export driver in the first place? What problem are you trying to solve?
d
-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of xxxxx@yahoo.com
Sent: Friday, April 01, 2011 10:19 AM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] Kernel mode dlls
sounds like a cool guy! :). thanks i just got mine built as well. turns out the builder doesn’t like an empty exports section. i will review this example to make sure i get mine set up correctly.
thanks
NTDEV is sponsored by OSR
For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars
To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer
can’t get into details but the jist is i want to keep some pieces of the driver functionality private while other parts more publicly available.
I have no idea what your answer means. There is no LoadLibrary equivalent in the kernel, so if you think you can split off functionality that you can then load dynamically at runtime, KM exports drivers are not what you need
d
-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of xxxxx@yahoo.com
Sent: Friday, April 01, 2011 10:23 AM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] Kernel mode dlls
can’t get into details but the jist is i want to keep some pieces of the driver functionality private while other parts more publicly available.
NTDEV is sponsored by OSR
For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars
To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer
what about delivering the binary only and not source code? will this serve the same purpose where one can publish a list of exported function signatures and deliver a binary without revealing the source code and algorithms contained within the .sys file?
xxxxx@yahoo.com wrote:
sounds like a cool guy! :). thanks i just got mine built as well. turns out the builder doesn’t like an empty exports section.
Well, yeah, if it doesn’t have any exports, then what good is the DLL?
It can’t be used.
what about delivering the binary only and not source code? will this serve the same purpose where one can publish a list of exported function signatures and deliver a binary without revealing the source code and algorithms contained within the .sys file?
Why do you have to release source code at all? Are you developing a
driver on contract and delivering it to a client? The scenario you
describe can certainly be made to work. You can deliver source code for
a skeleton driver that links to your DLL, which is delivered binary only
with a .H, a .LIB, and a .SYS. You’ll have to deliver 32-bit and 64-bit
binaries.
–
Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.
I’ve worked with an unnamed adapter vendor that did exactly that. They
were willing to share their source code for their miniport, but not
the sources for their associated super secret proprietary extra
special dll. I found it odd, but it did accomplish what you are trying
to do, I think.
Mark Roddy
On Fri, Apr 1, 2011 at 1:34 PM, wrote:
> what about delivering the binary only and not source code? will this serve the same purpose where one can publish a list of exported function signatures and deliver a binary without revealing the source code and algorithms contained within the .sys file?
>
> —
> NTDEV is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer
>
This separation of functionality and the can also be achieved in a PnP
driver stack by using Filter Drivers. The two drivers can QI for one
another. The ‘dynamic’ loading bit occurs because the PnP manager loads
the (declared set of) filters in the correct order and unloads them when not
needed.
Good Luck,
Dave Cattley
-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of xxxxx@yahoo.com
Sent: Friday, April 01, 2011 1:23 PM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] Kernel mode dlls
can’t get into details but the jist is i want to keep some pieces of the
driver functionality private while other parts more publicly available.
NTDEV is sponsored by OSR
For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars
To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer
Tim,
the driver will have exports but i hadn’t put them into the .def file yet. i was trying to see if i could get a build to work with a skeleton dll. i think this configuration will accomplish what i want. i will put in a simple export and try to load and call it to see if i can make it work.
thanks to all.
Also, you can have a legacy style no-hardware driver that exports its interfaces by some IOCTL, for your private codez.
i thought about a software-only KMDF driver as well. i think this kernel dll method will work fine. if i run into any trouble i will look into it more.
thanks.
To clarify, you don’t manually load a KM DLL. If you have explicit imports in Driver A that import functions from export driver B, export driver B will be automatically loaded by the kenrel loader before Driver A’s DriverEntry is every called.
d
-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of xxxxx@yahoo.com
Sent: Friday, April 01, 2011 12:14 PM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] Kernel mode dlls
Tim,
the driver will have exports but i hadn’t put them into the .def file yet. i was trying to see if i could get a build to work with a skeleton dll. i think this configuration will accomplish what i want. i will put in a simple export and try to load and call it to see if i can make it work.
thanks to all.
NTDEV is sponsored by OSR
For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars
To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer
that’s ok. i was able to get by KM export dll built and a couple of exports working. thanks for the info.
Do I need the .sys file of an export driver or is statically linking against the .lib file enough? If I need the .sys file, do I need an inf file to install it?
You need the sys file; you don’t need an inf.
I don’t recall the specifics of this one, but is there some reason why you
couldn’t just use a static library? There’s a lot to be said for static
libraries.
Good luck,
mm
-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of xxxxx@yahoo.com
Sent: Wednesday, April 06, 2011 4:17 PM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] Kernel mode dlls
Do I need the .sys file of an export driver or is statically linking against
the .lib file enough? If I need the .sys file, do I need an inf file to
install it?
NTDEV is sponsored by OSR
For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars
To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer
xxxxx@yahoo.com wrote:
Do I need the .sys file of an export driver or is statically linking against the .lib file enough? If I need the .sys file, do I need an inf file to install it?
The .lib file merely contains a “pointer” to the name of the .sys file
and corresponding entry point. The .sys file needs to be present in
system32\drivers when the calling driver loads. It does not need an
INF, nor any kind of installer.
–
Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.