W-Fix — компактная WPF-утилита для системных администраторов и продвинутых пользователей Windows, которая автоматически диагностирует и устраняет типичные проблемы с принтерами.
Вместо ручного ковыряния в реестре, PowerShell и журналах событий — всё в один клик.
Portable. Один
.exeфайл, без установки. Носи на флешке.
| # | Фиксер | Ошибка | Что делает |
|---|---|---|---|
| 1 | Перезапуск Spooler | 0x00000008, spooler |
Стоп → очистка очереди → старт |
| 2 | Error 0x0000011b | RPC Auth |
Патч реестра RpcAuthnLevelPrivacyEnabled (KB5005565) |
| 3 | Error 0x00004005 | Ops failed | RPC + Point&Print + брандмауэр + SMB |
| 4 | Error 0x00000709 | Default printer | Права реестра HKCU + WScript.Network |
| 5 | Error 0x00000002 | File not found | Очистка prtprocs + PendingFileRename + P&P |
| 6 | Error 0x0000007e | DLL missing | Копирование mscms.dll + удаление BIDI-ключа |
| 7 | Error 0x0000007b | Invalid name | Удаление повреждённого драйвера + очистка spool |
| 8 | Error 0x00000008 | Not enough memory | Диагностика памяти + очистка temp |
| 9 | IPP Fixer | 0xbcb, 0xbcc |
Windows Feature + IPP Class Driver + порт 631 |
| 10 | Сетевая диагностика | Network / DNS | Ping / DNS / TCP-порты (read-only) |
| 11 | Переустановка драйвера | 0x0000007b, driver |
INF / UNC / Авто (с диалогом выбора) |
| 12 | Принтер по умолчанию | Default printer | Сброс реестра + SetDefaultPrinter |
- 🌐 Удалённые машины — применяй фиксеры через WinRM/PowerShell Remoting
- 🔍 Обнаружение принтеров — CIM / WMI / Get-Printer (тройной fallback)
- 📋 Полный лог — каждый шаг фиксера отображается в реальном времени
- 🗂 Active Directory — обзор принтеров в домене
- Скачай
W-Fix.exeиз раздела Releases - Запусти от имени администратора (правой кнопкой → «Запуск от имени администратора»)
- Выбери принтер в левой панели
- Выбери фиксер в правой панели → нажми «Применить»
⚠️ Права администратора обязательны — фиксеры изменяют реестр и службы Windows.
- Windows 10/11 x64
- .NET 8 SDK
git clone https://github.com/OneDeadMachine/W-Fix.git
cd W-Fix
dotnet run --project src/W-Fix.Appdotnet publish src/W-Fix.App/W-Fix.App.csproj `
-c Release -r win-x64 --self-contained true `
-p:PublishSingleFile=true `
-p:IncludeAllContentForSelfExtract=true `
-p:EnableCompressionInSingleFile=true `
-o ./publishРезультат: publish/W-Fix.exe (~90 МБ, полностью автономный).
W-Fix/
├── src/
│ ├── W-Fix.Core/ # Бизнес-логика
│ │ ├── Fixers/ # 12 фиксеров (FixerBase → IFixer)
│ │ ├── Services/
│ │ │ ├── WmiService.cs # Обнаружение принтеров (CIM/WMI/PS)
│ │ │ ├── PowerShellEngine.cs # Встроенный PS SDK + внешний fallback
│ │ │ └── FixerRegistry.cs # Регистрация и поиск фиксеров
│ │ └── Models/ # PrinterInfo, FixResult, LogEntry ...
│ └── W-Fix.App/ # WPF UI (MVVM + CommunityToolkit)
│ ├── ViewModels/
│ ├── Views/
│ └── Assets/icon.ico
└── publish/W-Fix.exe # Готовый портативный файл
Стек: WPF · .NET 8 · ModernWpfUI · CommunityToolkit.Mvvm · PowerShell SDK · Serilog
| Компонент | Минимум |
|---|---|
| ОС | Windows 10 1903+ / Windows 11 |
| Архитектура | x64 |
| .NET Runtime | Встроен (self-contained) |
| Права | Администратор |
| PowerShell | 5.1+ (встроен в Windows) |
MIT © 2026 OneDeadMachine