I’m testing an existing serial port filter driver which has worked on Win XP/7 for years, but now it is not loaded into serial port device stack on Windows 10 10240. The driver file is correctly signed with company’s code signing certificate although the driver package is not WQHL signed.
The driver installation does not show any errors and the driver is listed as a filter in both registry and Device Manager’s tab page. System event log does not have any clues. Googled around for new Win 10 driver requirement but could not find any specific ones for hardware filter driver.
If you run msinfo32.exe, do you see that driver listed under “Software
Environment -> System Drivers” section? If so, you can see your driver’s
state as well.
Finally find that a parameter is not set in the registry correctly before the driver is loaded so our device attaching logic does not work.
Then the problem comes to the change on Run and RunOnce key of Win 10 registry as the above parameter is written by a script launched by cmd.exe and the whole operation is specified in RunOnce key. The location of this parameter needs admin access, so on old Windows we set “Run As Administrator” to cmd.exe’s property. Now on Win 10 it seems that this does not work and the launched cmd instance does not have the administrative privilege - at least on build 10240. Hope that it’s just a defect of this build and will be addressed on future builds.
Do not depend on Run or RunOnce keys for driver install, your design was already flawed and you were exposed. Don?t assume the flaw will be masked in the future
From: xxxxx@ybwork.com Sent: Monday, July 20, 2015 3:13 PM To: Windows System Software Devs Interest List Subject: RE:[ntdev] Is there any new requirement for filter driver on Windows 10?
Thanks guys for the input.
Finally find that a parameter is not set in the registry correctly before the driver is loaded so our device attaching logic does not work.
Then the problem comes to the change on Run and RunOnce key of Win 10 registry as the above parameter is written by a script launched by cmd.exe and the whole operation is specified in RunOnce key. The location of this parameter needs admin access, so on old Windows we set “Run As Administrator” to cmd.exe’s property. Now on Win 10 it seems that this does not work and the launched cmd instance does not have the administrative privilege - at least on build 10240. Hope that it’s just a defect of this build and will be addressed on future builds.
We do not rely on the Run key to install drivers - it’s just a method to start a multi stage installation. There are lots of software installations which firstly install something then ask users to reboot and do the second installation after Windows starts up. So we are doing the same thing and the driver installation is just a part of the second stage.