Hi,
Hi ,
I am new to windows driver development . I have written one sample driver application .
Appreciate any help !
The code and tool used for building driver is listed below
Dev Environment
- Code is taken from GIT - (https://github.com/microsoft/Windows-driver-samples/tree/main/network/ndis/filter))
- Used Visual Studio 2022 and Latest SDK and WDK
- Compilation is successfull for both debug and Release
- Signed with valid test certificate
- Compiled on windows 10 OS (laptop)
Test Environ ment :
- Windows 2016 Server
- Certificate is installed correctely in Trust Store
- Installed by clicking right on inf file and selecting Install menu option
Installation Result :
- Got message that installation is successfull
- Installation log is attached here
>> [Device Install (DiInstallDriver) - C:\Users\Administrator\Desktop\ndislwf\ndislwf.inf]
>> Section start 2022/09/03 00:36:47.271
cmd: "C:\Windows\System32\InfDefaultInstall.exe" "C:\Users\Administrator\Desktop\ndislwf\ndislwf.inf"
ndv: Flags: 0x00000000
ndv: INF path: C:\Users\Administrator\Desktop\ndislwf\ndislwf.inf
inf: {SetupCopyOEMInf: C:\Users\Administrator\Desktop\ndislwf\ndislwf.inf} 00:36:47.302
inf: Copy style: 0x00000000
sto: {Setup Import Driver Package: C:\Users\Administrator\Desktop\ndislwf\ndislwf.inf} 00:36:47.317
inf: Provider: TODO-Set-Provider
inf: Class GUID: {4D36E974-E325-11CE-BFC1-08002BE10318}
inf: Driver Version: 09/02/2022,12.58.23.438
inf: Catalog File: netlwf.cat
sto: {Copy Driver Package: C:\Users\Administrator\Desktop\ndislwf\ndislwf.inf} 00:36:47.333
sto: Driver Package = C:\Users\Administrator\Desktop\ndislwf\ndislwf.inf
sto: Flags = 0x00000007
sto: Destination = C:\Users\ADMINI~1\AppData\Local\Temp\2\{c9c31d75-d273-1d47-8f6a-545e7cd5a147}
sto: Copying driver package files to 'C:\Users\ADMINI~1\AppData\Local\Temp\2\{c9c31d75-d273-1d47-8f6a-545e7cd5a147}'.
flq: Copying 'C:\Users\Administrator\Desktop\ndislwf\ndislwf.inf' to 'C:\Users\ADMINI~1\AppData\Local\Temp\2\{c9c31d75-d273-1d47-8f6a-545e7cd5a147}\ndislwf.inf'.
flq: Copying 'C:\Users\Administrator\Desktop\ndislwf\ndislwf.sys' to 'C:\Users\ADMINI~1\AppData\Local\Temp\2\{c9c31d75-d273-1d47-8f6a-545e7cd5a147}\ndislwf.sys'.
flq: Copying 'C:\Users\Administrator\Desktop\ndislwf\netlwf.cat' to 'C:\Users\ADMINI~1\AppData\Local\Temp\2\{c9c31d75-d273-1d47-8f6a-545e7cd5a147}\netlwf.cat'.
sto: {Copy Driver Package: exit(0x00000000)} 00:36:47.364
pol: {Driver package policy check} 00:36:47.380
pol: {Driver package policy check - exit(0x00000000)} 00:36:47.380
sto: {Stage Driver Package: C:\Users\ADMINI~1\AppData\Local\Temp\2\{c9c31d75-d273-1d47-8f6a-545e7cd5a147}\ndislwf.inf} 00:36:47.380
inf: {Query Configurability: C:\Users\ADMINI~1\AppData\Local\Temp\2\{c9c31d75-d273-1d47-8f6a-545e7cd5a147}\ndislwf.inf} 00:36:47.380
inf: Driver package 'ndislwf.inf' is configurable.
inf: {Query Configurability: exit(0x00000000)} 00:36:47.396
flq: Copying 'C:\Users\ADMINI~1\AppData\Local\Temp\2\{c9c31d75-d273-1d47-8f6a-545e7cd5a147}\ndislwf.inf' to 'C:\Windows\System32\DriverStore\Temp\{615a233a-da87-c54e-a8b4-a59235904337}\ndislwf.inf'.
flq: Copying 'C:\Users\ADMINI~1\AppData\Local\Temp\2\{c9c31d75-d273-1d47-8f6a-545e7cd5a147}\ndislwf.sys' to 'C:\Windows\System32\DriverStore\Temp\{615a233a-da87-c54e-a8b4-a59235904337}\ndislwf.sys'.
flq: Copying 'C:\Users\ADMINI~1\AppData\Local\Temp\2\{c9c31d75-d273-1d47-8f6a-545e7cd5a147}\netlwf.cat' to 'C:\Windows\System32\DriverStore\Temp\{615a233a-da87-c54e-a8b4-a59235904337}\netlwf.cat'.
sto: {DRIVERSTORE IMPORT VALIDATE} 00:36:47.411
sig: {_VERIFY_FILE_SIGNATURE} 00:36:47.427
sig: Key = ndislwf.inf
sig: FilePath = C:\Windows\System32\DriverStore\Temp\{615a233a-da87-c54e-a8b4-a59235904337}\ndislwf.inf
sig: Catalog = C:\Windows\System32\DriverStore\Temp\{615a233a-da87-c54e-a8b4-a59235904337}\netlwf.cat
! sig: Verifying file against specific (valid) catalog failed! (0x800b0109)
! sig: Error 0x800b0109: A certificate chain processed, but terminated in a root certificate which is not trusted by the trust provider.
sig: {_VERIFY_FILE_SIGNATURE exit(0x800b0109)} 00:36:47.427
sig: {_VERIFY_FILE_SIGNATURE} 00:36:47.427
sig: Key = ndislwf.inf
sig: FilePath = C:\Windows\System32\DriverStore\Temp\{615a233a-da87-c54e-a8b4-a59235904337}\ndislwf.inf
sig: Catalog = C:\Windows\System32\DriverStore\Temp\{615a233a-da87-c54e-a8b4-a59235904337}\netlwf.cat
sig: Success: File is signed in Authenticode(tm) catalog.
sig: Error 0xe0000241: The INF was signed with an Authenticode(tm) catalog from a trusted publisher.
sig: {_VERIFY_FILE_SIGNATURE exit(0xe0000241)} 00:36:47.442
sto: {DRIVERSTORE IMPORT VALIDATE: exit(0x00000000)} 00:36:47.442
sig: Signer Score = 0x0F000000
sig: Signer Name = WDKTestCert ShuklaKartikey,133044317412764904
sto: {DRIVERSTORE IMPORT BEGIN} 00:36:47.442
sto: {DRIVERSTORE IMPORT BEGIN: exit(0x00000000)} 00:36:47.442
cpy: {Copy Directory: C:\Windows\System32\DriverStore\Temp\{615a233a-da87-c54e-a8b4-a59235904337}} 00:36:47.442
cpy: Target Path = C:\Windows\System32\DriverStore\FileRepository\ndislwf.inf_amd64_d2d8637994bc1d7b
cpy: {Copy Directory: exit(0x00000000)} 00:36:47.442
idb: {Register Driver Package: C:\Windows\System32\DriverStore\FileRepository\ndislwf.inf_amd64_d2d8637994bc1d7b\ndislwf.inf} 00:36:47.442
idb: Created driver package object 'ndislwf.inf_amd64_d2d8637994bc1d7b' in DRIVERS database node.
idb: Created driver INF file object 'oem2.inf' in DRIVERS database node.
idb: Registered driver package 'ndislwf.inf_amd64_d2d8637994bc1d7b' with 'oem2.inf'.
idb: {Register Driver Package: exit(0x00000000)} 00:36:47.442
idb: {Publish Driver Package: C:\Windows\System32\DriverStore\FileRepository\ndislwf.inf_amd64_d2d8637994bc1d7b\ndislwf.inf} 00:36:47.442
idb: Activating driver package 'ndislwf.inf_amd64_d2d8637994bc1d7b'.
cpy: Published 'ndislwf.inf_amd64_d2d8637994bc1d7b\ndislwf.inf' to 'oem2.inf'.
idb: Indexed 2 device IDs for 'ndislwf.inf_amd64_d2d8637994bc1d7b'.
sto: Flushed driver database node 'DRIVERS'. Time = 62 ms
sto: Flushed driver database node 'SYSTEM'. Time = 16 ms
idb: {Publish Driver Package: exit(0x00000000)} 00:36:47.536
sto: {DRIVERSTORE IMPORT END} 00:36:47.536
dvi: Flushed all driver package files to disk. Time = 0 ms
sig: Installed catalog 'netlwf.cat' as 'oem2.cat'.
sto: {DRIVERSTORE IMPORT END: exit(0x00000000)} 00:36:47.567
sto: {Stage Driver Package: exit(0x00000000)} 00:36:47.567
sto: {Setup Import Driver Package - exit (0x00000000)} 00:36:47.583
inf: Driver Store Path: C:\Windows\System32\DriverStore\FileRepository\ndislwf.inf_amd64_d2d8637994bc1d7b\ndislwf.inf
inf: Published Inf Path: C:\Windows\INF\oem2.inf
inf: {SetupCopyOEMInf exit (0x00000000)} 00:36:47.599
<<< Section end 2022/09/03 00:36:47.630
<<< [Exit status: SUCCESS]
Result :
- Driver is not listed in System Information GUI and alos sys file is not present in C:\Windows\System32 \drivers folder , Looks like windows installer is not showing error but it is saying installation is successful .