6

Until this afternoon, I only knew ntp as network time protocol. But installed on our Windows 2008 server is a different ntp as shown below with ntp -?.

I am looking for documentation above and beyond what came out in help. I want to send a duplex command to the printer.

Any ideas or pointers to documnentation would be appreciated. For example, if you look at -@ as the first option, our MUNIS printing uses these files. I want to know what those commands are. They are not specific to MUNIS. They are specific commands to the printer. I've added a sample file at the end of this post.

C:\Windows\system32>ntp -?
v1.09 Usage: piped_data | ntp.exe -dPrintDevice <options> <InputFile>

                 (Epson)                                    (Default)
-@ <options file>:   File containing (these) option settings:
-d <printer>     :   Name of printer, ex. '\\svr\hplaser'   :
-r <filename>    :   Redirect output to file (PCL format)   :
-n <# copies>    :   Number of copies                       :  1
-o <orientation> :   P=Portrait  L=Landscape                :  P
-l <lpp>         :   Lines per page                         : 66
-i <lpi>         : * Lines per inch                         :  6
-v <VMI>         :   Vertical Motion Index                  :  7.2
-m <top margin>  :   Top margin                             :
-z <point size>  :   Point Size (font height)               : 12
-s <spacing>     : * 0=Fixed  1=Proportional                :  0
-p <pitch>       : * Character per Inch                     : 10
-e <left margin> : * Left margin                            :
-b <bin>         :   0=Current 1=Main  2=Manual  5=Lg tray  :  0
-t <typeface>    :   0=Line Ptr  3=Courier  4101=TimesRoman :  3
-y <sym set>     :   8U=Roman-8  0B=Line Draw  0O=OCR-A     : 8U
-w <stroke wt>   : * 0=Medium  3=Bold                       :  0
-u <setup string>: * Override built-in setup, ex. '\033E'   :
-f               : * Append FormFeed (eject) at document end:
-q               : * Debug flag, shows escape codes on scrn :
-x <emulation>   :   H=HP Laser, E=Epson FX, R=Raw mode     :  H


Default emulation is HP PCL-5.  Use '-x E' for Epson FX.

Options file format (-@ flag):
        Options file settings OVERRIDE the same option on command line.
        Enter only 1 option per line.
        Any line not starting with '-' or '/' is ignored (comment).

Examples:
        *--- Using pipe, landscape, 132 col, 66 lpp, to hp4.
             dir | ntp -d hp4 -l 66 -v 5.45 -p 13 -o L

        *--- Same as above, only using options file with 1 option per line.
             dir | ntp -@ hp4land.ntp

        *--- Using file, portrait, 80 col, 66 lpp, to \\server\hp4.
             ntp -d \\server\hp4 myrpt.txt

A space after flag is not required, -p10 or -p 10 are both ok.

ls.ntp used with the -@ <options file>.

# LS.NTP
# NTP.exe options file to setup for 'ls' mode

# Set landscape mode
# Set pitch condensed landscape mode 13.0
# Set VMI landscape mode 15.45
# Set Left Margin to 3
-o L
-p 13.0
-v 5.45
-e 3

I cannot tell if the locally installed ntp.exe is strictly a vendor's creation or part of HP's utilities, given HP and Epson are mentioned in the documentation.

octopusgrabbus
  • 175
  • 5
  • 20
  • Can you run `(Get-Item C:\windows\system32\ntp.exe).VersionInfo|fl` in powershell and get us the file details? Might help to know what company built the program. You could right-click to properties and screenshot the Details tab if you hate PS. – Mark Jan 09 '13 at 20:41
  • This is vendor added, and not in c:\windows\system32. However, the command instructions have references to HP and Epson. – octopusgrabbus Jan 10 '13 at 22:21
  • Well, cd to the directory where it resides and run `(Get-Item .\ntp.exe).VersionInfo|fl` and get the info. We're never going to figure anything out without finding out who wrote it. – Mark Jan 11 '13 at 17:05
  • I did do that, and nothing came back. We may be at a dead end. – octopusgrabbus Jan 11 '13 at 21:22
  • I guess you could post it somewhere and we could dig though it for strings. :-) It uses "Usage: ", likes "-" for flags, and allows compacted flags all points to a unix app that was re-written for windows. I'm guessing it just sends a bunch of raw printer control codes to the printer. You could probably give it "CON" as printer name and have it print the control codes to your console. – Mark Jan 11 '13 at 22:08
  • Or, more helpfully, you could pause a printer's spool, run the command, then peek at the spool file that gets saved on the print server to see what it sent. That might actually help. – Mark Jan 11 '13 at 22:10
  • My whole point of writing this, is what now appears to have been a vendor's application had some documentation associated with it that made it seem to be part of HP's utilities. I could not find ntp.exe anywhere that was not associated with what most of us assume is ntp (network time protocol.) – octopusgrabbus Jan 11 '13 at 22:24
  • The command line options, more precisely the hint, `vmi`, `stroke wt`, `lpi`, `lpp`, etc, are PCL terms. This look like a command line PCL format utility, or even a PCL5 printer driver. And it supporting the Epson extension I really doubt it is from HP. I did suspect it is a cygwin utility but I cannot find cygwin source tree date back before 2005. If my guess is correct, it's function is completely replaced by cups in the linux world. So far I am hitting dead end on all directions for my research. – John Siu Jan 12 '13 at 00:54
  • @Mark The program actually has a `-r` option to output directly to a file, in PCL format. – John Siu Jan 12 '13 at 01:57

4 Answers4

2

PCL5 Printer Driver

So far I am hitting dead end on all directions searching where this ntp.exe come from. But I will make an educated guess.

The command line options, more precisely the hint, vmi, stroke wt, lpi, lpp, etc, are PCL terms. Additionally with -r to output PCL file, and input via a pipe, this should be a PCL5 printer driver. It format the incoming stream to PCL and send the output the a network printer with the RAW queue.

This is rare but not unheard of, especially in the 90s', this is an example: http://www.artwork.com/support/windows/escape.htm.

And it supporting the Epson extension I really doubt it is from HP. And it does not come with Windows NT 4.

Command Line Option

I will skip the obvious one

-v : Vertical Motion Index : 7.2

The Vertical Motion Index ( VMI ) command designates the distance between rows in 1/48 inch increments (The vertical distance the cursor will move for a line feed operation).

From http://www.devenezia.com/docs/HP/index.html
VERTICAL PRINTER AREA DEFAULTS
1.)Portrait Letter (8 1/2 x 11)    = 10 inches
2.)Portrait Legal (8 1/2 x 14)     = 13 inches
3.)Landscape letter (11 x 8 1/2)   = 7.5 inches
4.)Landscape letter (14 x 8 1/2)   = 7.5 inches

Example: To designate 66 lines per page on letter size paper, portrait orientation.

        10 inches / 66 lines per page x 48 = 7.27

-t : 0=Line Ptr 3=Courier 4101=TimesRoman : 3

Printer come with default font sets. Some have more. Each fond is assigned a number. You can obtain a font list and their number from your printer online menu.

-y : 8U=Roman-8 0B=Line Draw 0O=OCR-A : 8U

Same as typeface but for symbol in this case

-w : * 0=Medium 3=Bold : 0

Control if fonts/characters should be print "thick"(Bold) or "normal"(medium)

-u : * Override built-in setup, ex. '\033E' :

A "setup", or "setup string", is that sequence of (raw) PCL and/or PJL commands used to place the target printer in a specific operating mode. For example, the PCL sequence Esc&l0O selects portrait mode, while Esc&l1S selects duplex (long edge binding) operation. (\033E is Reset).

ls.ntp

It is just an option files. Instead of putting/typing all options in the command line, put all of them in a file, one option per line.

So

<something> | ntp.exe -@ LS.NTP <something>

is the same as

<something> | ntp.exe -o L -p 13.0 -v 5.45 -e 3 <something>

Reference

  1. http://www.tcmnet.com.br/www_public/downloads/Documentos/Manual%20Impressoras/PCL.pdf
  2. http://h20000.www2.hp.com/bc/docs/support/SupportManual/bpl13205/bpl13205.pdf
  3. http://www.hpmmsupport.com/MPE%20Manual/5500/B3265090848.16170/18.htm
John Siu
  • 3,577
  • 2
  • 15
  • 23
2

I found some MUNIS release notes that reference ntp.exe. I've never heard of it, personally and I think it came from your vendor. If you haven't searched it for strings yet, do so. A compiler signature that is shared with some of the vendor's other files might be enough to attribute authorship. The other thing you can do, obviously, is just ask the vendor.

In terms of sending a duplex command, I suspect you could use the -u argument to supply a different initialization string that contains the PCL duplex command. Something like:

# LS.NTP
# NTP.exe options file to setup for 'ls' mode

# Set landscape mode
# Set pitch condensed landscape mode 13.0
# Set VMI landscape mode 15.45
# Set Left Margin to 3
-o L
-p 13.0
-v 5.45
-e 3
-u '\033E\033&l1S'

The string '\033E\033&l1S' is a PCL reset followed by a Simplex/Duplex toggle to long-edge binding duplex. HP has a nice PCL reference on their site that I pulled this from.

Evan Anderson
  • 141,071
  • 19
  • 191
  • 328
1

It appears to be a remote print queue control CLI for Windows NT print servers. Here is a mention of it in a Yahoo Group from 1996: http://tech.groups.yahoo.com/group/lprng/message/1800

Unfortunately they do not specify where it came from or any docs, but perhaps this adds some clarity to the discussion.

SLD
  • 300
  • 1
  • 9
  • Dam, that is the same link I dig out in my deleted answer and OP say it is useless. – John Siu Jan 14 '13 at 15:26
  • I suspect that the "ntp.exe" that article is referring to isn't the same one the OP is referencing. I see nothing in the usage information in the post to indicate that "ntp.exe" handles any kind of control of NT print queues aside from adding formatting information and submitting jobs to the queue. – Evan Anderson Jan 14 '13 at 19:39
  • I'm not entirely sure my post was deserving of being an accepted answer or the bounty, but I'm glad it helped. – SLD Jan 14 '13 at 20:30
  • @SLD: I'm just interested in tracking down this piece of software now. I pulled down the "lpinfo" package referenced in the message you linked to and found where `ntp.exe` gets called (in the Perl script lpinfo_lpq_nt) and the calling convention looks nothing like the `ntp.exe` that the OP is talking about (see http://fossies.org/unix/misc/old/lpinfo-2.63.tar.gz:a/lpinfo-2.63/htdocs/LPRng/admin/cgi-bin/suid.ph where it's put into the $nt_lpc variable, and http://fossies.org/unix/misc/old/lpinfo-2.63.tar.gz:a/lpinfo-2.63/htdocs/LPRng/admin/cgi-bin/lpinfo_lpq_nt where it gets called.) – Evan Anderson Jan 15 '13 at 00:11
1

ntp.exe is part of the standard MUNIS (product) installation, and, as far as I know, is a product of MUNIS (company), now Tyler Technologies.

Rather than fighting with ntp.exe, I'd recommend upgrading to MUNIS 9.1 or higher. It (properly) supports server-based print queues, and you can set the printing defaults on those queues as you would on any other windows print queue. As of version 9.3, you'll still need to keep your existing configuration for printing of AR Receipts -- there's a bug that causes them to not print properly to server-based print queues.

aNullValue
  • 447
  • 5
  • 10