Click here to Skip to main content
14,268,557 members
Rate this:
Please Sign up or sign in to vote.
See more:
Hey guys.

I just have a question about windows driver development. I completed a windows driver for vista, win7(32bits & 64bits), but only use administrator can load the driver correct, using normal account, windows will block it to c:\windows\system32\driver folder, and can't add item to regedit.

At first, I use rundll32.exe setupapi, InstallHinfSection DefaultInstall 132 "*.inf" to load the driver, but wrong! Then I use ShellExecuteEx just as "run as" the rundll32.exe to load the driver, wrong again!

I just wonder is there another way to load the driver successful using normal account, and how? Thanks very much! Bow!

PS. use adminitrator the driver can load and work successful.

Thanks again!
Posted
Updated 11-Nov-10 1:24am
v2

1 solution

Rate this:
Please Sign up or sign in to vote.

Solution 1

you cannot load the driver in post vista Operating systems if it isn't signed windows will block it.

The only two ways to do this are:

1. Start the OS In test mode.
2. Use WinDbg.

(NOTE: I AM NOT SURE IF THESE WORKAROUNDS WORK WITH 64 bit versions of VISTA or Windows 7)


To start the OS in test mode start a CMD instance as an administrator and execute the following commands:

bcdedit.exe -set loadoptions DDISABLE_INTEGRITY_CHECKS
bcdedit.exe -set TESTSIGNING ON

To disable Test Mode execute the following commands:

bcdedit.exe -set loadoptions EENABLE_INTEGRITY_CHECKS
bcdedit.exe -set TESTSIGNING OFF

(NOTE: if you disable test mode your driver wont run since it isn't signed)

D, Kurt.
   
v3
Comments
simeone18 22-Feb-11 9:03am
   
Thanks for your reply.But i have signed it with windows digital signature.

I am wondering now if it is windows UAC restrict, so i give the install software admin right to install the driver, sometimes it will work right, maybe i think that depends on system, because some system haven't be installed server pack.

anyway, it is all because of UAC.Maybe you can't install any driver on normal account.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)




CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100