Signed drivers helper for Windows OS. Windex helps inspect installed drivers and devices, export driver packages, and install .inf files using pnputil.
- Scan installed signed drivers (Win32_PnPSignedDriver).
- Scan network adapters and connected devices (Win32_NetworkAdapter, Win32_PnPEntity).
- Export a single driver or all drivers to a target folder (optionally create
.ziparchives). - Install
.infdriver files from a folder usingpnputil.
- Windows 10 / 11.
- .NET runtime compatible with the project.
pnputil.exeavailable on PATH (shipped with Windows).- Administrative privileges for driver install/export operations.
-
Build with IDE:
- Open the project in your IDE (example: JetBrains Rider).
- Build the solution to produce the executable (e.g.
device.exe).
-
Build with .NET CLI:
- Navigate to the project folder.
- Run
dotnet build -c Releaseto build the project in Release configuration. - The executable will be located in
bin\Release\netX.Y\(replaceX.Ywith the target framework version).
General usage printed by the tool:
-
windex -g [-dr|-ne|-de] [-e]— scan devices:-dr: Scan all installed drivers.-ne: Scan network adapters.-de: Scan connected devices.-e: Optional: show only devices with errors (applies to-neand-de).
-
windex -f <INF-Folder>— install all.inffiles found under<INF-Folder>usingpnputil. -
windex -e [-a|<device-ID>] <path> [-r <repo>] [-z]— export drivers:-a: Export all drivers.<device-ID>: Export a specific driver by device instance ID.<path>: Target path for exported files (created if missing).-r <repo>: Optional repository URL written to the repo map (works with-a).-z: Export as zip archives.
-
windex -h [-g|-f|-e]— Prints subcommand help.
Examples:
- Scan all signed drivers:
windex -g -dr
- Scan disconnected or error network adapters:
windex -g -ne -e
- Export all drivers to
C:\driversand create zip archives:windex -e -a C:\drivers -r https://example.com/repo -z
- Export a specific driver:
windex -e "PCI\VEN_1234&DEV_5678" C:\out
- Install all
.inffiles under a folder:windex -f C:\missing-infs
- CLI entry point and helpers are in
Windex/Program.cs. - Export logic and SetupAPI interop are implemented in
Windex/Windex.cs. - Export strategies:
- Try to copy from local Driver Store.
- Attempt
pnputil /export-driver. - Fallback to SetupDi enumeration and registry properties.
- The installer flow uses
pnputil /add-driver "<path>" /installfor each.inf.
- Most operations require Administrator rights. Run the executable in an elevated shell.
- If
pnputilis not found or fails, ensure Windows components are present and executable is on PATH. - Export may fail for drivers that are only available via OEM packages or encrypted locations.
- See repository license file for terms.