# Xerox Universal Print Driver - Offline USB Installer Standalone offline installer for Xerox Universal Print Driver for USB-connected printers. ## Overview This installer packages the Xerox Global Print Driver PCL6 for offline installation on computers that need to connect Xerox 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** | Xerox Global Print Driver PCL6 | | **Version** | 5.1055.3.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**: Extracts the Xerox signing certificate from the driver catalog (.cat) file and adds it to: - `TrustedPublisher` store - Trusts the driver publisher - `Root` store - Validates certificate chain 2. **Modifies Signing Policy**: Sets driver signing policy to "Warn" (not "Block") via registry: - `HKLM\SOFTWARE\Microsoft\Driver Signing` - `HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\DriverSigning` 3. **Multiple Install Methods**: Tries several approaches for compatibility: - `pnputil /add-driver` (Windows 10+ syntax) - `pnputil -a` (Windows 7 syntax) - `rundll32 setupapi.dll,InstallHinfSection` (fallback) - `rundll32 printui.dll,PrintUIEntry` (driver registration) ## Project Structure ``` OfflineInstaller/ ├── XeroxOfflineInstaller.iss # Main Inno Setup script ├── README.md # This file ├── gea-logo.ico # Application icon ├── patrick.bmp # Wizard image (164x314px) ├── patrick-sm.bmp # Small wizard image (55x58px) └── drivers/ ├── xerox_x64/ # 64-bit driver files │ └── UNIV_5.1055.3.0_PCL6_x64_Driver.inf/ │ ├── x3UNIVX.inf # Main INF file │ └── x3UNIVx.cat # Certificate catalog └── xerox_x32/ # 32-bit driver files ├── x3UNIVX.inf # Main INF file └── x3UNIVx.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 `XeroxOfflineInstaller.iss` in Inno Setup Compiler 3. Press F9 to compile 4. Output: `Output\XeroxOfflineInstaller.exe` ### Command Line Build ```batch "C:\Program Files (x86)\Inno Setup 6\ISCC.exe" XeroxOfflineInstaller.iss ``` ## Running the Installer 1. Run `XeroxOfflineInstaller.exe` as **Administrator** 2. Click Next on the Welcome page 3. Watch installation progress: - Step 1: Installing certificate to trusted store - Step 2: Configuring driver signing policy - Step 3: Installing printer driver 4. Press any key to close 5. Connect your Xerox printer via USB 6. Windows will automatically detect and configure the printer ## Silent Installation ```batch XeroxOfflineInstaller.exe /VERYSILENT /NORESTART ``` ## How It Works 1. **Extract**: Driver files extracted to temp folder 2. **Certificate**: Installs signing certificate to trusted stores using `certutil` 3. **Policy**: Sets driver signing to "Warn" mode via registry 4. **pnputil**: Adds driver package to Windows driver store 5. **PrintUI**: Registers driver with Windows Print Spooler 6. **USB Detection**: When printer is connected, Windows matches it to installed driver ## Supported Printers This universal driver supports most Xerox printers including: - Xerox AltaLink series - Xerox VersaLink series - Xerox WorkCentre series - And many more Xerox 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 is expected 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 "Xerox Global Print Driver PCL6" ### Verify Driver Installation (Windows 7) ```cmd wmic printer driver list brief | findstr /i xerox ``` ### Verify Driver Installation (Windows 10+) ```powershell Get-PrinterDriver -Name "Xerox Global Print Driver PCL6" ``` ### Verify Certificate Installation ```cmd certutil -store TrustedPublisher ``` ## Differences from PrinterInstaller | Feature | PrinterInstaller | OfflineInstaller | |---------|------------------|------------------| | Network Required | Yes (queries ShopDB) | No | | Connection Type | TCP/IP Network | USB | | Vendors | HP, Xerox | Xerox only | | Printer Selection | Database-driven list | N/A (driver only) | | Windows 7 Support | Limited | Full (cert bypass) | | Use Case | Network printers | USB printers | ## Technical Details ### Registry Keys Modified ``` HKLM\SOFTWARE\Microsoft\Driver Signing Policy = 1 (DWORD) - Warn instead of Block HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\DriverSigning Policy = 1 (DWORD) - Warn instead of Block ``` ### Certificate Stores Used - `TrustedPublisher` - Machine-level trusted publishers - `Root` - Trusted root certification authorities ### Installation Methods (in order) 1. `pnputil /add-driver /install` - Windows 10+ 2. `pnputil -a ` - Windows 7 3. `rundll32 setupapi.dll,InstallHinfSection` - Fallback 4. `rundll32 printui.dll,PrintUIEntry /ia` - Driver registration ## Version History ### Version 1.1 (2025-12-23) - Added Windows 7 certificate bypass - Switched to batch script for better compatibility - Added certutil certificate installation - Added driver signing policy modification - Added fallback installation methods - Uses Windows 7 pnputil syntax (`-a` flag) ### Version 1.0 (2025-12-23) - Initial release - Xerox Global Print Driver PCL6 v5.1055.3.0 - x64 and x32 support --- **Internal use only - WJDT / GE Aerospace**