Spool: send print files directly to a Windows printer
Spool is a small Win32 console utility that sends the contents of a file to the spooler of a Windows printer, bypassing the printer driver. The purpose is to send a raw print file, such as one produced by the “print to file” functionality of Windows and many DOS programs, to a printer.
In our documentation generation system, based on TEX, the source documents are processed to a “DVI” file (device-independent) which then passes through a DVI driver to generate the codes for the specific printer. When the printer is directly connected to the PC, the DVI driver can output to that printer directly, but for printing to a network printer, it must send its output to a file, for later spooling to the printer. This “Spool” utility performs this last step.
There is a handful of utilities like this one; a search for “raw print” or “direct print” on the Internet will uncover both shareware and freeware programs with a similar purpose. Most of these utilities are GUI programs, without command-line support. The Spool utility fits in because it is a freeware, command-line driven utility that prints to either a specific printer or the default printer.
Downloads & license
- Spool version 1.3 (35 KiB)
- The Spool utility in a ZIP archive. Just unzip and run; Spool writes nothing in the registry, no installation or uninstallation is required. Source code in C is included.
Spool 1.3 is copyrighted software that is free for personal and commercial use. You may use it and distribute it without limitations. You may adapt it for your own use. If you distribute modified versions of this utility, you must however make clear that it is not the original version, and you must keep the copyright notice intact. There are no guarantees or warranties whatsoever; use it at your own risk.
Starting the command
spool without any command-line arguments shows
the usage, and a list with the available printers. The default printer is also
identified. Below is typical output, on a laptop that has one local (virtual) printer
(PDFCreator), a second printer that is connected to another PC in the network (called
"server") and a third that is directly connected to the network.
This third printer is set as the default. Whether the names of the servers and/or
the addresses of network print queues are shown, depends on how the printers were
installed. So even if
spool only lists the names of the printers,
without network path prefix, these may still be network printers.
Spool 1.3 (c) Copyright 2008-2020, CompuPhase, Netherlands USAGE: spool.exe filename [printer name] [document title] Available printers: PDFCreator \\SERVER\Brother * \\http://192.168.0.88:631\BRN0ACD3B The printer marked with a * is the default printer
spool with a filename, sends that file to the default printer.
To print to any other printer, add the printer name to the command line as the
second argument to spool. The printer name may optionally include the server
path. Given the list of printers in the above example, the names "\\server\brother"
and "brother" would both select the same printer.
If a filename or the printer name contains space characters, the entire name must be between double quotes.
The optional document title is the name that will be shown in the print queue. If it contains space characters, it must be between double quotes.
- Version 1.3, 16 November 2020
- “document title” parameter.
- Version 1.2, 26 October 2020
- Source code included (no modifications in the software).
- Version 1.2, 9 May 2011
- Support for more than 20 installed printers.
- Version 1.1, 13 December 2010
- Bug corrections.
- Version 1.0
- First public release.