A Windows XP help forum. PCbanter

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

Go Back   Home » PCbanter forum » Microsoft Windows XP » Printing and Faxing with Windows XP
Site Map Home Register Authors List Search Today's Posts Mark Forums Read Web Partners

2000/XP print processor



 
 
Thread Tools Display Modes
  #1  
Old April 11th 07, 08:39 PM posted to microsoft.public.windowsxp.print_fax
No_Name
external usenet poster
 
Posts: 1
Default 2000/XP print processor

Need some help.

Old dos application, that prints to a netware print queue.
The printing is redirected to local printer or the print queue from
within the dos application.

Works fine from dos and Win9x.

Windows 2000 and Xp cause the printing to be sent to the print queue
before
the form is complete. This is dependent on the lpt_timeout setting in
WOW.
The application need the data to spool until the operator is completed
with an order.
If I leave lpt_timeout at 15, the job may be sent before the order is
complete.
If I set it really high ie 9999 the the program is fine but the
printout doesn't hit the printer
until the timeout is complete.

Is there a way to bypass the print processor and windows spooler.
I have tried all the print processor settings, local printer settings
etc.

Need to keep this application running while providing 2000/XP
workstations.

TIA
Bob

Ads
  #2  
Old April 11th 07, 09:33 PM posted to microsoft.public.windowsxp.print_fax
Paul Baker [MVP, Windows - SDK]
external usenet poster
 
Posts: 39
Default 2000/XP print processor

I am not familiar enough with this to tell you how to get it to work with
Novell Netware.

However, do you need to use Novell Netware? Why not set it up on a Windows
XP machine as a shared printer? You can still use Netware for legacy
applications.

Paul

wrote in message
ups.com...
Need some help.

Old dos application, that prints to a netware print queue.
The printing is redirected to local printer or the print queue from
within the dos application.

Works fine from dos and Win9x.

Windows 2000 and Xp cause the printing to be sent to the print queue
before
the form is complete. This is dependent on the lpt_timeout setting in
WOW.
The application need the data to spool until the operator is completed
with an order.
If I leave lpt_timeout at 15, the job may be sent before the order is
complete.
If I set it really high ie 9999 the the program is fine but the
printout doesn't hit the printer
until the timeout is complete.

Is there a way to bypass the print processor and windows spooler.
I have tried all the print processor settings, local printer settings
etc.

Need to keep this application running while providing 2000/XP
workstations.

TIA
Bob



  #3  
Old April 11th 07, 10:16 PM posted to microsoft.public.windowsxp.print_fax
No_Name
external usenet poster
 
Posts: 4
Default 2000/XP print processor

The application is on the novell server and the print redirect routine
was written for Netware print queues, so I am kind of stuck with it.

I dont think it is a novell issue as much as trying to bypass the
spooler in 2000/XP.

Bob

On Apr 11, 4:33 pm, "Paul Baker [MVP, Windows - SDK]"
wrote:
I am not familiar enough with this to tell you how to get it to work with
Novell Netware.

However, do you need to use Novell Netware? Why not set it up on a Windows
XP machine as a shared printer? You can still use Netware for legacy
applications.

Paul

wrote in message

ups.com...



Need some help.


Old dos application, that prints to a netware print queue.
The printing is redirected to local printer or the print queue from
within the dos application.


Works fine from dos and Win9x.


Windows 2000 and Xp cause the printing to be sent to the print queue
before
the form is complete. This is dependent on the lpt_timeout setting in
WOW.
The application need the data to spool until the operator is completed
with an order.
If I leave lpt_timeout at 15, the job may be sent before the order is
complete.
If I set it really high ie 9999 the the program is fine but the
printout doesn't hit the printer
until the timeout is complete.


Is there a way to bypass the print processor and windows spooler.
I have tried all the print processor settings, local printer settings
etc.


Need to keep this application running while providing 2000/XP
workstations.


TIA
Bob- Hide quoted text -


- Show quoted text -



  #4  
Old April 11th 07, 10:35 PM posted to microsoft.public.windowsxp.print_fax
Paul Baker [MVP, Windows - SDK]
external usenet poster
 
Posts: 39
Default 2000/XP print processor

Did you look at the Advanced page of the printer properties dialog?

Paul

wrote in message
oups.com...
The application is on the novell server and the print redirect routine
was written for Netware print queues, so I am kind of stuck with it.

I dont think it is a novell issue as much as trying to bypass the
spooler in 2000/XP.

Bob

On Apr 11, 4:33 pm, "Paul Baker [MVP, Windows - SDK]"
wrote:
I am not familiar enough with this to tell you how to get it to work with
Novell Netware.

However, do you need to use Novell Netware? Why not set it up on a
Windows
XP machine as a shared printer? You can still use Netware for legacy
applications.

Paul

wrote in message

ups.com...



Need some help.


Old dos application, that prints to a netware print queue.
The printing is redirected to local printer or the print queue from
within the dos application.


Works fine from dos and Win9x.


Windows 2000 and Xp cause the printing to be sent to the print queue
before
the form is complete. This is dependent on the lpt_timeout setting in
WOW.
The application need the data to spool until the operator is completed
with an order.
If I leave lpt_timeout at 15, the job may be sent before the order is
complete.
If I set it really high ie 9999 the the program is fine but the
printout doesn't hit the printer
until the timeout is complete.


Is there a way to bypass the print processor and windows spooler.
I have tried all the print processor settings, local printer settings
etc.


Need to keep this application running while providing 2000/XP
workstations.


TIA
Bob- Hide quoted text -


- Show quoted text -





  #5  
Old April 12th 07, 12:08 AM posted to microsoft.public.windowsxp.print_fax
Davide Guolo
external usenet poster
 
Posts: 45
Default 2000/XP print processor

Bob,

If I leave lpt_timeout at 15, the job may be sent before the order is
complete.
If I set it really high ie 9999 the the program is fine but the
printout doesn't hit the printer
until the timeout is complete.


your DOS programs depends by the LPT_Timeout property because it does not
close the printer port at the end of the print job.

If you are the original programmer you can fix it, so that the LPT_Timeout
value will be no more a problem for you.

For example, if it's a Basic program, instead of using:

LPRINT "Hello world"

you could:

OPEN "LPT1:" FOR OUTPUT AS #1
PRINT #1, "Hello world"
CLOSE #1

If it's an xBase program you can add a "SET PRINTER TO" at the end (without
additional parameters)

Almost any DOS programming language does have a command to close the output
device.

Regards,
Davide Guolo
aSwIt s.r.l.
--------------------------------------------------------------
Printfil - Windows Printing System for Applications
http://www.printfil.com
Odbc4All - Connection to ODBC Data Sources for any Application
http://www.aswit.com/odbc4all
@Kill - Batch Close Windows Applications - Freeware
http://www.aswit.com/akill
--------------------------------------------------------------

  #6  
Old April 12th 07, 01:53 PM posted to microsoft.public.windowsxp.print_fax
No_Name
external usenet poster
 
Posts: 4
Default 2000/XP print processor

Paul
I have tried everything I can think of with the printer properties.
I have even tried with no printer installed, as I dont need a drive to
print to LPT1.

Bob

Davide

We are closing the print job.
Let me explain, Dos POS application printing to lpt1.
As an order is keyed, each line item prints on local printer and when
order is complete a formfeed is issued.
Then a shared netware printer was added with a utility to send the
data to the novell print queue. The utility is run before printing,
capture, and after the formfeed, endcap.

Works fine for dos and 9X.

Enter 2000/XP
The lpt_timeout causes the data to be sent to the novell queue before
order is completed. If one on part is entered and 15 sec go by
(default lpt_timeout Setting) , that one part is printed and a
formfeed is issued.

Unfortunitly, the language the application was written in does not
give me any other options.
Really need to look at way to change 2K/XP local print behaviour.

Thanks
Bob



Did you look at the Advanced page of the printer properties dialog?

Paul


On Apr 11, 7:08 pm, "Davide Guolo"
wrote:
Bob,

If I leave lpt_timeout at 15, the job may be sent before the order is
complete.
If I set it really high ie 9999 the the program is fine but the
printout doesn't hit the printer
until the timeout is complete.


your DOS programs depends by the LPT_Timeout property because it does not
close the printer port at the end of the print job.

If you are the original programmer you can fix it, so that the LPT_Timeout
value will be no more a problem for you.

For example, if it's a Basic program, instead of using:

LPRINT "Hello world"

you could:

OPEN "LPT1:" FOR OUTPUT AS #1
PRINT #1, "Hello world"
CLOSE #1

If it's an xBase program you can add a "SET PRINTER TO" at the end (without
additional parameters)

Almost any DOS programming language does have a command to close the output
device.

Regards,
Davide Guolo
aSwIt s.r.l.
--------------------------------------------------------------
Printfil - Windows Printing System for Applications
http://www.printfil.com
Odbc4All - Connection to ODBC Data Sources for any Application
http://www.aswit.com/odbc4all
@Kill - Batch Close Windows Applications - Freeware
http://www.aswit.com/akill
--------------------------------------------------------------



  #7  
Old April 12th 07, 06:17 PM posted to microsoft.public.windowsxp.print_fax
Davide Guolo
external usenet poster
 
Posts: 45
Default 2000/XP print processor

Bob,

Enter 2000/XP
The lpt_timeout causes the data to be sent to the novell queue before
order is completed.


ah, ok. That's because you're printing one line at a time, so there may be
long pauses between the lines, right ?

LPT_Timeout was added in recent Windows versions in order to "know" when a
DOS job has end (was pretty common not closing the LPT device in DOS). Even
by setting the LPT_Timeout to 9999, if you DO close the port, the job should
be spooled immediately.
The same should happen if you exit your DOS application (in this case all
the buffers, including the print device are closed too)

Unfortunitly, the language the application was written in does not
give me any other options.


Are you the original programmer ?
If so, in which language is the app. written ? (maybe you could "print to
file" from DOS then you could send the entire file to the queue at the print
job end)

If you cannot modify the DOS app., maybe you could try the "prindir9"
utility (similar to "prn2file") to forward the LPT output to a file.

Regards
Davide
aSwIt s.r.l.
--------------------------------------------------------------
Printfil - Windows Printing System for Applications
http://www.printfil.com
Odbc4All - Connection to ODBC Data Sources for any Application
http://www.aswit.com/odbc4all
@Kill - Batch Close Windows Applications - Freeware
http://www.aswit.com/akill
--------------------------------------------------------------


  #8  
Old April 12th 07, 06:33 PM posted to microsoft.public.windowsxp.print_fax
Paul Baker [MVP, Windows - SDK]
external usenet poster
 
Posts: 39
Default 2000/XP print processor

Davide,

If Windows 2000/XP "knows" the DOS job is done based on LPT_Timeout and
previous versions did not have that, how is it that Windows 9x is working
for Bob? How does *it* know when the end of the DOS job is if he is not
closing the port?

Paul

"Davide Guolo" wrote in message
...
Bob,

Enter 2000/XP
The lpt_timeout causes the data to be sent to the novell queue before
order is completed.


ah, ok. That's because you're printing one line at a time, so there may be
long pauses between the lines, right ?

LPT_Timeout was added in recent Windows versions in order to "know" when a
DOS job has end (was pretty common not closing the LPT device in DOS).
Even by setting the LPT_Timeout to 9999, if you DO close the port, the job
should be spooled immediately.
The same should happen if you exit your DOS application (in this case all
the buffers, including the print device are closed too)

Unfortunitly, the language the application was written in does not
give me any other options.


Are you the original programmer ?
If so, in which language is the app. written ? (maybe you could "print to
file" from DOS then you could send the entire file to the queue at the
print job end)

If you cannot modify the DOS app., maybe you could try the "prindir9"
utility (similar to "prn2file") to forward the LPT output to a file.

Regards
Davide
aSwIt s.r.l.
--------------------------------------------------------------
Printfil - Windows Printing System for Applications
http://www.printfil.com
Odbc4All - Connection to ODBC Data Sources for any Application
http://www.aswit.com/odbc4all
@Kill - Batch Close Windows Applications - Freeware
http://www.aswit.com/akill
--------------------------------------------------------------




  #9  
Old April 12th 07, 11:02 PM posted to microsoft.public.windowsxp.print_fax
No_Name
external usenet poster
 
Posts: 4
Default 2000/XP print processor

Yes
One line at a time.
I have the ability to mod the program, but not the utility that
captures and endcaps from within the program.

Rewriting, save to file and then send the file will work, but major
rewrite of program. The client is prob. going to dump the program in a
year or two, hence the new workstations. Moving into the windows era.

Paul
Thats the point, Win9X let you goto LPT port. If the printprocessor
and spooler were involved, they didn't do anything. 2K/XP changed
things with how LPT are dealt with. I wish I could revert to an older
print processor just for LPT1, so as not to screw anytning else up,
but I dont understand the PrintProcessor well enough.

Thanks
Bob

On Apr 12, 1:17 pm, "Davide Guolo"
wrote:
Bob,

Enter 2000/XP
The lpt_timeout causes the data to be sent to the novell queue before
order is completed.


ah, ok. That's because you're printing one line at a time, so there may be
long pauses between the lines, right ?

LPT_Timeout was added in recent Windows versions in order to "know" when a
DOS job has end (was pretty common not closing the LPT device in DOS). Even
by setting the LPT_Timeout to 9999, if you DO close the port, the job should
be spooled immediately.
The same should happen if you exit your DOS application (in this case all
the buffers, including the print device are closed too)

Unfortunitly, the language the application was written in does not
give me any other options.


Are you the original programmer ?
If so, in which language is the app. written ? (maybe you could "print to
file" from DOS then you could send the entire file to the queue at the print
job end)

If you cannot modify the DOS app., maybe you could try the "prindir9"
utility (similar to "prn2file") to forward the LPT output to a file.

Regards
Davide
aSwIt s.r.l.
--------------------------------------------------------------
Printfil - Windows Printing System for Applications
http://www.printfil.com
Odbc4All - Connection to ODBC Data Sources for any Application
http://www.aswit.com/odbc4all
@Kill - Batch Close Windows Applications - Freeware
http://www.aswit.com/akill
--------------------------------------------------------------



  #10  
Old April 12th 07, 11:20 PM posted to microsoft.public.windowsxp.print_fax
Davide Guolo
external usenet poster
 
Posts: 45
Default 2000/XP print processor

Paul,

If Windows 2000/XP "knows" the DOS job is done based on LPT_Timeout and
previous versions did not have that, how is it that Windows 9x is working
for Bob?


in Windows 9x was possible to directly write from DOS to the hardware LPT
port, even without install any printer driver on that port. NT based
systems, for security reasons, introduced a new abstraction layer when
talking with hardware devices, hence the need for the LPT_Timeout (which was
not present, nor needed in previous Windows versions)

Regards,
Davide
aSwIt s.r.l.
--------------------------------------------------------------
Printfil - Windows Printing System for Applications
http://www.printfil.com
Odbc4All - Connection to ODBC Data Sources for any Application
http://www.aswit.com/odbc4all
@Kill - Batch Close Windows Applications - Freeware
http://www.aswit.com/akill
--------------------------------------------------------------

  #11  
Old April 12th 07, 11:30 PM posted to microsoft.public.windowsxp.print_fax
Davide Guolo
external usenet poster
 
Posts: 45
Default 2000/XP print processor

Bob,

Yes
One line at a time.
I have the ability to mod the program, but not the utility that
captures and endcaps from within the program.


ok.

Rewriting, save to file and then send the file will work, but major
rewrite of program. The client is prob. going to dump the program in a
year or two, hence the new workstations. Moving into the windows era.


Well, then perhaps you could explore the "prindir9" suggestion (I've
succesfully used it on some XP systems).
http://www.simtel.net/product.php%5B...5Dsi mtel.net

Prindir9 could allow you to forward the LPT output to a file without major
rewritings. You would then only have to add a single line of code at the
print job end: "COPY file.txt LPT1:".
At that point the capture/endcap utility will continue to do its job as
always.

Win9X let you goto LPT port. If the printprocessor
and spooler were involved, they didn't do anything. 2K/XP changed
things with how LPT are dealt with. I wish I could revert to an older
print processor just for LPT1


I don't think you can bypass the hardware abstraction layer on NT based
systems.

Regards,
Davide
aSwIt s.r.l.
--------------------------------------------------------------
Printfil - Windows Printing System for Applications
http://www.printfil.com
Odbc4All - Connection to ODBC Data Sources for any Application
http://www.aswit.com/odbc4all
@Kill - Batch Close Windows Applications - Freeware
http://www.aswit.com/akill
--------------------------------------------------------------

  #12  
Old April 13th 07, 02:20 PM posted to microsoft.public.windowsxp.print_fax
Paul Baker [MVP, Windows - SDK]
external usenet poster
 
Posts: 39
Default 2000/XP print processor

If you install a printer in the Printers and Faxes folder on that same port,
it will in addition make everything to that port go through the print queue.
I assume you have eliminated this additional layer?

Paul

"Davide Guolo" wrote in message
...
Bob,

Yes
One line at a time.
I have the ability to mod the program, but not the utility that
captures and endcaps from within the program.


ok.

Rewriting, save to file and then send the file will work, but major
rewrite of program. The client is prob. going to dump the program in a
year or two, hence the new workstations. Moving into the windows era.


Well, then perhaps you could explore the "prindir9" suggestion (I've
succesfully used it on some XP systems).
http://www.simtel.net/product.php%5B...5Dsi mtel.net

Prindir9 could allow you to forward the LPT output to a file without major
rewritings. You would then only have to add a single line of code at the
print job end: "COPY file.txt LPT1:".
At that point the capture/endcap utility will continue to do its job as
always.

Win9X let you goto LPT port. If the printprocessor
and spooler were involved, they didn't do anything. 2K/XP changed
things with how LPT are dealt with. I wish I could revert to an older
print processor just for LPT1


I don't think you can bypass the hardware abstraction layer on NT based
systems.

Regards,
Davide
aSwIt s.r.l.
--------------------------------------------------------------
Printfil - Windows Printing System for Applications
http://www.printfil.com
Odbc4All - Connection to ODBC Data Sources for any Application
http://www.aswit.com/odbc4all
@Kill - Batch Close Windows Applications - Freeware
http://www.aswit.com/akill
--------------------------------------------------------------



  #13  
Old April 13th 07, 06:03 PM posted to microsoft.public.windowsxp.print_fax
No_Name
external usenet poster
 
Posts: 4
Default 2000/XP print processor

Paul

I have tried it with no windows printers installed and also with a
generic printer on LPT1 so I could set the spool options to print
directly to the port with the same results.

On Apr 13, 9:20 am, "Paul Baker [MVP, Windows - SDK]"
wrote:
If you install a printer in the Printers and Faxes folder on that same port,
it will in addition make everything to that port go through the print queue.
I assume you have eliminated this additional layer?

Paul

"Davide Guolo" wrote in message

...



Bob,


Yes
One line at a time.
I have the ability to mod the program, but not the utility that
captures and endcaps from within the program.


ok.


Rewriting, save to file and then send the file will work, but major
rewrite of program. The client is prob. going to dump the program in a
year or two, hence the new workstations. Moving into the windows era.


Well, then perhaps you could explore the "prindir9" suggestion (I've
succesfully used it on some XP systems).
http://www.simtel.net/product.php%5B...5D0%5BSiteID%5...


Prindir9 could allow you to forward the LPT output to a file without major
rewritings. You would then only have to add a single line of code at the
print job end: "COPY file.txt LPT1:".
At that point the capture/endcap utility will continue to do its job as
always.


Win9X let you goto LPT port. If the printprocessor
and spooler were involved, they didn't do anything. 2K/XP changed
things with how LPT are dealt with. I wish I could revert to an older
print processor just for LPT1


I don't think you can bypass the hardware abstraction layer on NT based
systems.


Regards,
Davide
aSwIt s.r.l.
--------------------------------------------------------------
Printfil - Windows Printing System for Applications
http://www.printfil.com
Odbc4All - Connection to ODBC Data Sources for any Application
http://www.aswit.com/odbc4all
@Kill - Batch Close Windows Applications - Freeware
http://www.aswit.com/akill
--------------------------------------------------------------- Hide quoted text -


- Show quoted text -



 




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is Off
HTML code is Off






All times are GMT +1. The time now is 11:39 AM.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 PCbanter.
The comments are property of their posters.