Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations IamaSherpa on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Print to non-networked printer in remote location

Status
Not open for further replies.

SeanAIX430

Technical User
Jun 29, 2001
189
Hardware: IBM Risc 6000 server with AIX 4.3.0, Wan from Milwaukee(server site) up the road to Jefferson(remote Minolta Printer that needs to print), and way down the road into Kansas(remote Epson FX 880-which prints).

Presenlty the AIX server prints out to many printers. Most are networked HP's, but I have a remote PC with it's own printer that only has a parrallel connection to it. From a Unix app the user can choose that printer from the que list and print directly to it. I have to set up another printer to do the same thing and have been completely unsuccessful. Although when I checked into the queue that the non-networked printer is linked to it pointed to a HP Jet Direct card. Maybe this printer was added to the queue of the networked printer in that location.

I talked to my Unix guy and he said the only way to do it was to buy Facetwin and load it on the server etc to get it up and running. I've tried that and the printer shows up in the list of printers, but I can't print to it out of the App that I need. I can do a lp -d fct_lpcomp6 filename, and that will print a normal file that resides on the server. So it's part of the way there, But the only thing that the server does is our accounting/shipping program and it won't print out of there.

I'm sorry that was confusing, but it's really confusing to me too. Help is desperately needed! Thanks in advance
 
Sounds confusing. So you have an existing networked PC with a parallel printer hanging off of it, and it has a UNIX print queue assiciated with it, and you can print from the UNIX box to the parallel printer? Now your trying to set up the same thing with another PC/parallel printer and it does not work? Please clarify.

My first suggestion is to purchase an external HP JetDirect box, it will make this a lot easier.

Barring that, some questions need to be answered about the purpose of the printing and the nature of the Application. Does this need to be a shared resource, or does just the end user with the printer want to print? What is the app printing (PS, PCL, text only). How is the app accessed (term emulator, X-win, GUI)
 
The users can either telnet or use Wintegrate to get to the App on the server. The app is Primac, by vercom software. A guy from there is looking into the issue for me too. This user needs to print packing slips and job reports to his parrallel printer from Primac. Since it works at another location I know it can be done, I'm just not sure how.
 
OK, here is a "VT100" trick I learned that I think will solve your problem. When you telnet to the system, you have to emulate vt100 on your emulation software for this to work.

echo "\033"[5i
dump you text here
echo "\033"[4i

It is hard to know exactly how this will interface with the application, I am not familiar with Primac, but the principle should work.
Basically the first escape sequence, when echoed, tells the vt100 terminal to switch to its printer port, which would be the default printer in your emulation software. For the local user, his parallel printer. The second escape sequence when echoed tells the vt100 terminal to switch back to the screen.
I have seen mixed results with this method, because you emulator is buffering the output while it is being printed. (ProComm + does it very nicely).

Here is what I do a lot of times when I can not set up a printer on a UNIX box.

I create this script /usr/local/bin/lprint

#!/usr/bin/sh
# This is for vt100 emulation only!
FILE=$1
if [ $TERM = vt100 ] ; then
echo "\033"[5i
cat $FILE
echo ^L^M
echo "\033"[4i
else
echo
echo "usage: $TERM != vt100"
echo
fi


Then you can use this script to print to your local system’s (PC's) default printer.

# lprint /etc/hosts

If you wanted to do it for stnd out, instead of having to pass a file, just change FILE=$1 to FILE=$* in a separate file called /usr/local/bin/tprint, then you could do something like this.

# cat /etc/hosts | tprint

 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top