READ.ME for the latest Print code: Description: ------------ This package provides replacement files for LPD.EXE, LPQ.EXE, LPR.EXE, LPRM.EXE, LPRMON.EXE, LPRPORTD.EXE, PDRVR.PDR, and LPR32.DLL. To date, these are the only files in the PRINT component that have had apar fixes made to them in OS/2 Warp v4.0 TCP/IP. Installation instructions: -------------------------- You must have the following installed on your system: - OS/2 version 4.0 with TCP/IP v4.0 TCP/IP Stack Apar IC17122 is a prerequisite for this print code. You should put the LPRFILES.EXE file in a temporary subdirectory and enter: LPRFILES LPRFILES.EXE file contents: -------------------------- READ.ME LPD.EXE 39366 9-09-97 8:24p LPQ.EXE 27248 8-04-97 9:38p LPR.EXE 44784 9-15-97 1:15p LPRM.EXE 27840 8-04-97 9:39p LPRMON.EXE 35009 8-04-97 9:40p LPRPORTD.EXE 66170 9-11-97 8:27p LPRPDRVR.PDR 52241 2-05-97 8:04a LPR32.DLL 63886 9-11-97 8:26p TNLS16.DLL 47104 4-21-97 8:21p You should back up the current versions of these files on your system. Then replace the *.EXE files in the TCPIP\BIN directory, and the LPRPDRVR.PDR, LPR32.DLL, and TNLS16.DLL files in the TCP\DLL directory. Then SHUTDOWN and REBOOT the system to make these executables and the corresponding dlls active. Apars included in this group of fixes with a brief description: (executables and/or dlls fixed) -------------------------------------------------- IC15250 - Provides DHCP (Dynamic Host Configuration Protocol) support for the LPR print function. Also, NLS translation problems were fixed that prevented translated messages from being displayed. ( lpd.exe, lpq.exe, lpr.exe, lprm.exe, lprmon.exe, lprportd.exe, lpr32.dll, lprpdrvr.pdr) IC15541 - When starting LPRPORTD from the command line on a pristine installed system, the error message "LPR 32.DLL failed to initialize, RC=-20021" is displayed. (lpd.exe, lpq.exe, lpr.exe, lprm.exe, lprmon.exe, lprportd.exe, lpr32.dll) IC15961 - When a customer opens the printer object and then opens the PIPE/LPD port settings, the PMSHELL grabs the port driver making it impossible for another process to print thereby locking the print jobs. If you do try to print, the spooler will either trap or hang the print job. (lprpdrvr.pdr) IC15980 - The LPRPORTD.EXE process can trap when two jobs are printing at the same time in two different printer queues each configured to output to a different \PIPE\LPDx pipe. It will not trap every print job, but it will trap. In our tests, it traps within 10 minutes of IPL with a nominal load. (lpr32.dll) IC16515 - SYS3175 with access violation in SETLOC1.DLL when LPRPORTD tries to access a printer that is turned off or unavailable.(lpr32.dll) IC17330 - Printing of files using LPRPORTD.EXE takes excessive amounts of time. A 300K file takes between 5.0 to 6.5 minutes to print. This is due to the fact that writes to the named pipe are occurring in 1K blocks and at 1.0 sec cycle increments. (lprportd.exe) IC17379 - When customer attempts to send a very large print job to the server using LPR on the client, the lpd window will fail with a SYS3175 error. The register contents show TNLS16.DLL as the failing module. They are able to LPR small print jobs, but when the jobs get very large, such as 100MB, they get this failure every time. (lpd.exe, tnls16.dll) IC17590 - Customer has 14 printers and 14 print queues on print server. Customer is limited to accessing only ports (721 - 731) at one time. The customer sees a 3 minute delay on the additional 4 queues after the print jobs are complete on the first 10 queues. (lpr32.dll) IC18395 - Incorrect messages received for lprportd, lpr,lpq, lprm and lprmon commands. This happens on translated messages. IC18816 - Port limitation (721-731) when using ip for printing causes severe backlog of print jobs on large networks. IC18841 - LPRPORTD hang when printer is ready and there is a job in the print queue (LPRPORTD running on print server). Note: This fix is important for customers who run LPRPORTD on a print server machine. As part of this fix a new -s option is introduced on LPRPORTD. This indicates that LPRPORTD is being run on a print server. With the -s option, a keepalive interval is set for connections started by LPRPORTD. To be beneficial, the customer should also set the keepalive interval to 2 or 3 minutes using the inetcfg command. (e.g. inetcfg keepalive=2 or 3). This allows TCP to monitor idle connections every 2 to 3 minutes and insure they are still alive or close the connection. IC18869 - SYS3175 trap in TNLS16.DLL running LPD -cp none specified trying to print a text with graphics file.