# HP Universal Print Driver - Offline USB Installer Standalone offline installer for HP Universal Print Driver for USB-connected printers. ## Overview This installer packages the HP Universal Printing PCL 6 driver for offline installation on computers that need to connect HP printers via USB. No network or database connection is required. **Designed for Windows 7+ systems with outdated root certificates.** ## Features - **Offline Installation**: No network connection required - **USB Plug-and-Play**: After driver installation, connect printer via USB and Windows auto-detects - **Multi-Architecture**: Supports both 32-bit and 64-bit Windows - **Windows 7 Compatible**: Handles certificate trust issues on older systems - **Certificate Bypass**: Automatically installs driver certificate to trusted store - **Simple UI**: Welcome page -> Install -> Done ## Driver Information | Property | Value | |----------|-------| | **Driver Name** | HP Universal Printing PCL 6 | | **Version** | 7.2.0 | | **Architectures** | x64 and x32 | | **Connection** | USB | | **Min Windows** | Windows 7 SP1 | ## Windows 7 Certificate Handling This installer addresses the "untrusted certificate" issue on Windows 7 systems that lack updated root certificates: ### What It Does 1. **Installs Certificate**: Adds the HP signing certificate from the driver catalog (.cat) file to: - `TrustedPublisher` store - Trusts the driver publisher 2. **Disables Signature Enforcement**: Sets driver signing policy to "Ignore" via registry: - `HKLM\SOFTWARE\Microsoft\Driver Signing` - `HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Driver Signing` 3. **Multiple Install Methods**: Tries several approaches for compatibility: - `pnputil -i -a` (Windows 7 syntax) - `pnputil /add-driver /install` (Windows 10+ syntax) - `rundll32 printui.dll,PrintUIEntry` (fallback) ## Project Structure ``` HPOfflineInstaller/ ├── HPOfflineInstaller.iss # Main Inno Setup script ├── README.md # This file ├── test_hp_install.bat # Test script for manual testing ├── gea-logo.ico # Application icon ├── patrick.bmp # Wizard image (164x314px) ├── patrick-sm.bmp # Small wizard image (55x58px) └── drivers/ ├── hp_x64/ # 64-bit driver files │ ├── hpcu345u.inf # Main INF file │ └── hpcu345u.cat # Certificate catalog └── hp_x32/ # 32-bit driver files ├── hpcu345c.inf # Main INF file └── hpcu345c.cat # Certificate catalog ``` ## Building the Installer ### Requirements - Windows machine with Inno Setup 6 installed - All files in this directory ### Steps 1. Copy this folder to a Windows machine 2. Open `HPOfflineInstaller.iss` in Inno Setup Compiler 3. Press F9 to compile 4. Output: `Output\HPOfflineInstaller.exe` ### Command Line Build ```batch "C:\Program Files (x86)\Inno Setup 6\ISCC.exe" HPOfflineInstaller.iss ``` ## Running the Installer 1. Run `HPOfflineInstaller.exe` as **Administrator** 2. Click Next on the Welcome page 3. Watch installation progress: - Step 1: Installing certificate to trusted store - Step 2: Disabling driver signature enforcement - Step 3: Installing printer driver 4. Press any key to close 5. Connect your HP printer via USB 6. Windows will automatically detect and configure the printer ## Silent Installation ```batch HPOfflineInstaller.exe /VERYSILENT /NORESTART ``` ## Testing Before Deployment Use `test_hp_install.bat` to test on target machines: 1. Copy `drivers\hp_x64` folder to `C:\temp\hp_drivers` on the target machine 2. Run `test_hp_install.bat` as Administrator 3. Verify all steps complete successfully ## How It Works 1. **Extract**: Driver files extracted to temp folder 2. **Certificate**: Installs signing certificate to TrustedPublisher store using `certutil` 3. **Policy**: Disables driver signing enforcement via registry 4. **pnputil**: Adds driver package to Windows driver store 5. **PrintUI**: Registers driver with Windows Print Spooler (fallback) 6. **USB Detection**: When printer is connected, Windows matches it to installed driver ## Supported Printers This universal driver supports most HP printers including: - HP LaserJet series - HP Color LaserJet series - HP OfficeJet series - HP PageWide series - And many more HP models ## Troubleshooting ### "Access Denied" Error - Run the installer as Administrator ### "Untrusted Certificate" Still Appears If Windows still shows a certificate warning after installation: 1. Click **"Install this driver software anyway"** 2. The driver will install and work normally 3. This may occur on some Windows 7 configurations ### Driver Already Installed - The installer will detect this and skip installation - Your printer is ready to use ### Printer Not Detected After USB Connection 1. Open Device Manager 2. Look for any devices with warning icons 3. Right-click -> Update Driver -> Browse my computer 4. Select "Let me pick from a list" 5. Choose "HP Universal Printing PCL 6" ### Verify Driver Installation (Windows 7) ```cmd wmic printer driver list brief | findstr /i hp ``` ### Verify Driver Installation (Windows 10+) ```powershell Get-PrinterDriver -Name "HP Universal Printing PCL 6" ``` ### Verify Certificate Installation ```cmd certutil -store TrustedPublisher ``` ## Technical Details ### Registry Keys Modified ``` HKLM\SOFTWARE\Microsoft\Driver Signing Policy = 00 (BINARY) - Ignore signature enforcement HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Driver Signing BehaviorOnFailedVerify = 0 (DWORD) - Ignore failed verification ``` ### Certificate Stores Used - `TrustedPublisher` - Machine-level trusted publishers ### Installation Methods (in order) 1. `pnputil -i -a ` - Windows 7 2. `pnputil /add-driver /install` - Windows 10+ 3. `rundll32 printui.dll,PrintUIEntry /ia` - Driver registration fallback ## Version History ### Version 1.0 (2025-12-23) - Initial release - HP Universal Printing PCL 6 v7.2.0 - x64 and x32 support - Windows 7 certificate bypass --- **Internal use only - WJDT / GE Aerospace**