Output sent to a "direct" print queue will by-pass the D3 spooler and go directly to the Windows printer assigned to it. This is easier to use and maintain than the "NTPrinter" (shared) method. However, you do not have the benefit of the D3 spooler.
A "direct" printer is setup as follows:
:dev-make -t printer -n 12 -a "\\SUPPORTLT\EPSON,1,s"
dev-make: 'L12' (x'0005000C') created
"-n 12" represents the form queue number. ",1" allows 1 blank page bwtween reports.
"\\SUPPORTLT\EPSON" is the printer you have setup as shared from your system.
:dev-list
Seq Typ Ref# Device-Type Device-Desc
==== ==== ================ ===============================
1 L 12 PRINTER (Direct) \\SUPPORTLT\EPSON
2 M 0 TAPE (Floppy) \\.\A:
3 M 1 TAPE (Pseudo) C:\Program Files\D3\D3Programs\D3Data.D3P
4 M 2 TAPE (Pseudo) C:\Program Files\D3\D3Virtual/Pseudo0
D3/NT will allow you to create a "direct" printer even if that printer is not on the network. However, the printer has to be on the network for any print jobs to be sent to it successfully from D3/NT. If the printer is not on the network and you attempt to send print jobs to that form queue a D3/NT error will display.
:block-print testme (p
Unrecognized Opcode @ SP_PPUT_UNIX:000
O=Logoff / Q=Quit / <CR>=Go to debugger ?
Setup a D3 form queue to print to a "shared" Windows printer.
The following 'dev-make' command will create a form queue in D3/NT. The printer specified is a printer connected to a Windows PC on your network. After creating the form queue, 'startptr' must be used to start it.
:dev-make -t NTPrinter -n 5 -a "\\SUPPORTLT\EPSON"
dev-make: 'N5' (x'00090005') created
"-n 5" represents the PIB assigned to this print queue.
"\\SUPPORTLT\EPSON" is the printer you have previously setup as shared from your system.
:startptr 10,10,0,s5
[1118] Printer '10' control block initialized.
This means start printer 10, form queue 10, with 0 pages between reports, on PIB 5.
You cannot create the NTPrinter, in D3, until after the printer shows up on the network. The following error will display if the printer does not exist in Windows.
:dev-make -t NTPrinter -n 5 -a "\\SUPPORTLT\EPSON,1,s"
dev-make: Creation failed. [-004] Invalid association ID
If a print job is sent to the printer while the printer is not on the network, the print statement aborts.
:block-print testme (p
Unrecognized Opcode @ SP_PPUT_UNIX:000
O=Logoff / Q=Quit / <CR>=Go to debugger ?