Initial commit: Inno Setup installer packages

Installer packages for GE manufacturing tools:
- BlueSSOFix: Blue SSO authentication fix
- HIDCardPrinter: HID card printer setup
- HPOfflineInstaller: HP printer offline installer
- MappedDrive: Network drive mapping
- PrinterInstaller: General printer installer
- ShopfloorConnect: Shopfloor connectivity tool
- XeroxOfflineInstaller: Xerox printer offline installer

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
cproudlock
2025-12-30 13:15:54 -05:00
commit 28541cd3ed
1175 changed files with 127441 additions and 0 deletions

View File

@@ -0,0 +1,207 @@
# 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 <inf> /install` - Windows 10+
2. `pnputil -a <inf>` - 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**