Technical support memos

ADDSUM TECHNICAL SUPPORT MEMO

Date:
January 20, 1998 (last updated June 7, 2002)
Subject:
Speeding up network printing in the DOS mode (WIN 3.1/95/98/NT/2000/XP/Novell networks - printing delay)
Product:
Advanced Accounting/TAS 5.1 "DOS" mode and all prior versions
Author:
Anthony J. Frates (Copyright 1998-2002 Addsum Business Software, Inc.)

When printing to a network printer (a printer that has been redirected using network software and which typically is not physically attached to the PC from which a print request has been issued) when running Advanced Accounting as a DOS program under Windows 95/98/NT/2000/XP (in versions 5.0 and prior this is the only way that Advanced Accounting/TAS can be run; in version 5.1 this is when Advanced Accounting/TAS is invoked using the ADV.BAT file or by calling it using the TPC50.EXE executable) or when running the program under a Novell network, users may experience a printing delay. Sometimes when printing from the program printing begins immediately; in many other cases printing commences at random intervals between a few seconds up to a minute or longer. (See Microsoft article Q140036.)

Under these circumstances, when ESCaping from the program, printing is immediately despooled, i.e. printing can be forced to begin by escaping out the program. This however is obviously an inconvienent way to force printing to commence.

This problem is not unique to Advanced Accounting per se but usually relates to the default values used by Windows 3.1/95/98/NT to spool DOS print jobs. Here are some solutions to this problem:

WIN 95/98/NT/2000/XP networks/WIN 3.1 - options include (1) change the SYSTEM.INI (or NT registry) as set out below (this is the preferred option for all Windows based PC's);(2) Printing directly to the printer; (3) logging in and out of the print server that you are connected to for printing purposes; or (4) using the "FLUSH" programs which are available for free from us.

(1) WIN 95/98: Change the settings in your SYSTEM.INI (WIN 3.1 or WIN95/98 PC's) to include the following:

[Network]
PrintBufTime=1

[ifsmgr]
PrintBufTime=1

If you already have a [Network] section just add the PrintBufTime line to it. If you do not have a [Network] section, add it after your [386Enh] or equivalent section. Under WIN 3.1 you may have to remove the network protocol and re-add it if you receive a network protocol error. After saving these changes, re-boot your PC before they will take effect. An easy way to edit your SYSTEM.INI is to select RUN and then type SYSEDIT. You will need to do this to every PC on your network that prints to a redirected (non-local) printer.

WIN NT/2000/XP server/workstation, there is a Virtual DOS Machine (VDM) related registry entry that determines the wait or timeout period when printing from a DOS VDM based print job. The LPT_Timeout value entry (type REG_SZ) in:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\WOW\LPT_timeout


determines the wait time. The default value is 15 seconds. Normally the value should be set to 1 or 2. This change would need to be made to every NT/2000/XP workstation on the network.

(Note that if a print-out appears over multiple pages, you may have to increase the timeout value. See Microsoft article Q101850.)

(2) Try printing directly to the printer. In the printer's properties (Settings -> Printers, right click on the installed printer) see if the "Print directly to the printer" option is available (WIN 95/98: this is under the Details tab then Spool Settings; WIN 2000/XP this is under the Advanced tab). This may not be the best option for shared printers but may solve printing delays to locally installed/non-network printers (such as point-of-sale receipt printers).

(3) Create a LOGON.BAT file as follows (where LPT2 is the mapped printer port, PRINTPC is the name of the PC to which the mapped printer is attached and OKIDATA is the name of the printer device):

@ECHO OFF
NET USE LPT2: \\PRINTPC\OKIDATA /YES

Create a LOGOFF.BAT as follows:

@ECHO OFF
NET USE LPT2: /DELETE /YES > nul
NET USE LPT2: \\PRINTPC\OKIDATA /YES > nul

Put these two batch files in your Advanced Accounting installation subdirectory. Under Y-System Maintenance and then H-Multi Printer Set-up, in the "Pre Prg" input LOGON (answer "N" to Run?) and in the "Post Prg" input LOGOFF (also input "N" to Run?). The LPT# must correspond to the LPT# used in the LOGON and LOGOFF.

This approach works but may occasionally break server connections.

(4) Obtain from us the programs FLUSHLP1.EXE, FLUSHLP2.EXE and FLUSHLP3.EXE. Under Y-System Maintenance and then H-Multi Printer Set-up, in the "Post Prg" input FLUSHLPX (input "N" to Run?) where X is the LPT# number (i.e. the number input to the right of "Driver" in the "Enter Printer Info" list box. For LPT2 for example you would input FLUSHLP2, for LPT3 you would use FLUSHLP3, etc. This approach avoids the possibility of a server connection being broken as long as the appropriate printer port has been captured (under "capture printer port" in the details tab of the printer's properties under Settings/Printers). If the PC does not have a local printer attachment via LPT1, a printer should be captured as LPT1 which is the default printer number.

NOVELL networks/DOS PC's - if the problem is encountered on a Novell network (regardless of whether WIN 3.1/95/98 is involved), some users have reported success by initiating a CAPTURE command before entering the software using the /ff parameter. Use of the "Pre prg" and "Post prg" capability under Y-System Maintenance and then H-Multi Printer Setup can be used to log on to a printer and then log off effectively forcing printing to commence.

While related primarily to network printers/devices, these changes may impact printers/devices that are connected locally and may help in connection with delays that are experienced with other peripheral devices that are attached to or via a parallel port (for example, a cash drawer).

Copyright © 1998-2002 Addsum Business Software, Inc.
ADDSUM is a registered service mark of Addsum Business Software, Inc.
Technical support phone number: 801-277-9240