Post by H-ManPost by Stan HilliardI have a legacy program written in VBDOS that runs in a DOS window.
One of my customers using Windows XP can't print. The attempt to print
just hangs the DOS window.
The internal code is like
OPEN "O", #1, "PRN"
PRINT #1, etc.
It has printed from windows 98 and 2000. Could it be windows XP
related?
It is not practical to change the program. (The program seems to work
well in XP otherwise.)
What could be the problem?
Help will be appreciated.
It works for me, XP Home SP2, HPLJ1100 on network print server mapped as
LPT1
I'd be interested in exactly what printer this is going to. Perhaps it's
more of a printer issue than an OS issue.
My customer has XP on a stand alone computer with a printer connected
USB. I don't know what brand. No network.
I have a Win98SE and an XP home. Neither is networked. I found the
following on the PC Magazine site for the XPs. I have not tried it
yet:
==== From Old App to USB Printer
http://www.pcworld.com/howto/article/0,aid,120357,00.asp
I have an old DOS-based database program that will print only to the
LPT1 or LPT2 ports on my PC. My new printer is strictly USB. How do I
print to it from my database application?
Walter Mueller, Regina, Saskatchewan
I'm becoming more and more convinced that you simply should not buy a
printer that doesn't include a parallel port. USB printers have too
many limitations (see "How Do I Share a Printer on My Small Network?"
for another example). Fortunately, there's a workaround for this
problem in Windows XP and 2000 that involves printer pooling, which is
meant to allow one logical printer to print to two actual devices.
First, you'll need to open the Printers applet in Control Panel: In
Windows XP, select Start, Control Panel, Printers and Other Hardware
(if you are using XP's Categories view), Printers and Faxes. If you
use Windows 2000, click Start, Settings, Printers. Now right-click
your printer's icon, and select Properties, Ports. Check Enable
printer pooling near the bottom of the dialog box; then select LPT1:
at the top of the port list, and click OK (see FIGURE 1).
Windows 98 and Me have what appears to be a built-in remedy--an option
named Capture Printer Port on the Details tab of each printer's
Properties dialog box. Unfortunately, this function works only for
printers on a network, not for those connected directly to your
computer.
====
I will try that with my XP laptop and USB printer soon. I sort of
expect it to work.
My win98 machine is another matter. It has two parallel ports
connected plus one USB printer. (three altogether, no network) I get
an error message from trying to address the USB:
==== (in DOS window)
Microsoft(R) Windows 98
(C)Copyright Microsoft Corp 1981-1999.
C:\WINDOWS>net use prn: \\tower\HP1012
Error 2106: This operation cannot be performed to your own computer;
it can be performed only on a server. For more information, contact
your network administrator.
C:\WINDOWS>
====
This might mean that it needs a "Microsoft Loopback Adapter" software
which tricks the computer into using its networking features even if
it is not actually on a network. However it is part of win2k and XP
but not 98.
http://www.columbia.edu/~em36/wpdos/winprint.html