When attempting to distribute documents via the Spindle Pro/Spindle Pro Auto printers, users will report that the processor window is not appearing.

The symptoms of this issue include:

  • No new processor logs being generated when attempting to print
  • Print jobs being stuck in the queue for the Spindle Pro/Spindle Pro Auto printers
  • The Spindle Pro Printer Agent service (SPAgent) is not running


To immediately resolve the issue, please try the following:

  • Press Win + R and type Services.msc, then click OK
  • Ensure that the Print Spooler service is running
  • Restart the Spindle Pro Printer Agent service
    • If the option to start/stop the service is greyed out, you will need to open the Services application as an administrator.
  • In Printers & Scanners, select the Spindle printer used and click Open Queue
  • Select all the documents within the print queue, right-click them, and click Restart

Longer term, we need to investigate the reason for the Spindle Pro Agent service stopping. This is a three step process:

1) Log the times that the service is stopping

2) Correlate this with Windows Event log to identify the cause

3) Remedy the cause

Logging the issue

We can put a command file (.cmd) in place and run it on a schedule using Windows Task Scheduler.

Create a new text file in Notepad / Notepad++ / Your choice of text editor

Copy the following into it:

@echo off

set "serviceName=SPAGENT" 
set "logFile=C:\tmp\SPService.log" REM Update this to your desired log file path

for /l %%x in (1, 1, 3) do (
 REM Check if the service is running
 sc query %serviceName% | find "RUNNING" > nul
 if %errorlevel% equ 0 (
 echo %DATE% %TIME% - %serviceName% is running. >> %logFile%
 goto exitloop
 else (
 echo %DATE% %TIME% - %serviceName% is not running. Restarting the service... >> %logFile%
 REM Restart the service
 net stop %serviceName%
 timeout /t 5 /nobreak > nul
 net start %serviceName%
 echo %DATE% %TIME% - %serviceName% has been restarted. >> %logFile%
 timeout /t 60 /nobreak > nul
echo %DATE% %TIME% - %serviceName% has failed to recover. >> %logFile%

You can edit the path on line 4 to set the log file location.

Save this file with a .cmd extension to a known location on the machine:

Next, Open Windows Task Scheduler from the Start menu, and choose Create Task...

Name the Task and set it to run as an Administrator account (it will need to restart services), whether it will run if the user is logged out

Under Triggers, click New... and set the timing for the task to run. The detail of this will depend on how frequently you are finding  you need to restart the service. For teh initial troubleshooting phase, you can set it to run hourly on weekdays as follows:

Under Actions, click New, and set the Action to Start a program, and browse to the cmd file you created previoulsy.

Leave the remaining tabs at their defaults and click OK to create teh task. You will be prompted for the credentilas of the account you are using to run the cmd script:

When run, the script will check to see if the service is running. If it is, it will log this to the file specified in line 4. and stop. If the service is not running, it will attempt to restart the service, wait 60 seconds and then check if the service is now running. If it is still not running, it will try twice more, waiting 60 seconds between tries before failing. All of this activity is logged with date and time stamps.

Investigate the Event Log

After a number of days, you can investigate the log file to see if/when the service has been not running. We now need to check the Windows Event log for the times referenced in the log file.

The causes of the service halting can vary depending on the environment, so once you have carried out the initial investigation as per the above, please contact Draycir Support for further advice.

Related ProductSpindle Document Distribution/Spindle Professional
Ref NumberKBA-01-03-033
Document Date13-01-2021
Original AuthorMatthew Perry
Document Versionv1.3
Last Updated03-06-2024
Update AuthorVince Hodgson