System requirements
Before installing APM, ensure your system meets these requirements:Operating system
Windows 10/11 or Windows Server 2019+
Runtime
.NET 10 Runtime (included in installer)
Network
Local network access for TCP/IP printers
Permissions
Administrator rights for service installation
Installation methods
APM offers two components that can be installed independently or together:- Windows Service - Background service for print job processing
- MAUI Application - Desktop UI for configuration and monitoring
For production environments, install the Windows Service on a dedicated workstation or server. The MAUI app can be installed on administrator machines for configuration.
Windows Service installation
The Windows Service runs as a background process and handles all print job processing.Build the service
Use the included PowerShell script to publish the service:This creates a self-contained deployment in
./publish/windows/worker/.What does publish_worker.ps1 do?
What does publish_worker.ps1 do?
The script located at
/home/daytona/workspace/source/publish_worker.ps1:1 performs these steps:- Cleans previous build artifacts
- Publishes the WorkerService project for Windows x64
- Includes all dependencies (no .NET installation required)
- Outputs to
./publish/windows/worker/
Install as Windows Service
Open an elevated PowerShell/Command Prompt and navigate to the publish directory:
Replace
C:\\path\\to\\publish\\windows\\worker\\WorkerService.exe with the actual full path to your published executable.Service configuration
The Windows Service is configured in/home/daytona/workspace/source/WorkerService/Program.cs:1 with these registered services:
/home/daytona/workspace/source/WorkerService/Worker.cs:74 for the service initialization logic.
MAUI Application installation
The MAUI application provides a graphical interface for managing printers, templates, and viewing logs.MAUI app features
The MAUI application provides these capabilities:Printer management
Add, edit, and test printer configurations with support for TCP, USB, and IPP connections
Template editor
Visual editor for creating and modifying print templates
Scale configuration
Configure serial scales with baud rate and data format settings
Service control
Start, stop, and monitor the Windows Service (Windows only)
Log viewer
Real-time log monitoring with filtering capabilities
Test printing
Send test print jobs to verify printer configuration
/home/daytona/workspace/source/UI/MauiProgram.cs:1 for the complete service registration.
Data storage locations
APM stores configuration and templates in platform-specific locations:| Data Type | Windows Location |
|---|---|
| Printer settings | %APPDATA%\\AppsielPrintManager\\printers.json |
| Print templates | %APPDATA%\\AppsielPrintManager\\templates\\ |
| Scale settings | %APPDATA%\\AppsielPrintManager\\scales.json |
| Application logs | %APPDATA%\\AppsielPrintManager\\logs\\ |
Both the Windows Service and MAUI app share the same data directory, allowing you to configure printers in the UI and have them immediately available to the service.
Firewall configuration
If you plan to accept WebSocket connections from other machines on the network:Uninstallation
To remove APM from your system:- Windows Service
- MAUI Application
- Configuration Data
Troubleshooting
Service won't start
Service won't start
Check the Windows Event Viewer:
- Open Event Viewer (
eventvwr.msc) - Navigate to Windows Logs → Application
- Look for errors from source “AppsielPrintManager”
- Port 7000 already in use by another application
- Insufficient permissions (run as Administrator)
- Missing .NET 10 runtime
WebSocket connection refused
WebSocket connection refused
Verify the service is running:If port 7000 is not listening, check service logs in
%APPDATA%\\AppsielPrintManager\\logs\\.Templates not loading
Templates not loading
Ensure default templates are created:
- Stop the service
- Delete
%APPDATA%\\AppsielPrintManager\\templates\\ - Start the service (templates will be recreated)
EnsureDefaultTemplatesAsync() at startup (see /home/daytona/workspace/source/WorkerService/Worker.cs:81).Print jobs fail silently
Print jobs fail silently
Check these common issues:
- Printer ID in
PrintJobRequestdoesn’t match configured printer - Printer IP address is incorrect or printer is offline
- Template for the specified
DocumentTypedoesn’t exist - Network firewall blocking TCP port 9100 (default printer port)
Next steps
Quick start
Send your first print job and verify the installation
Printer configuration
Configure thermal and dot matrix printers