command line - add new local printer port

K

Keith G Hicks

How do I do this?

I need to set up some command line scripts to install printers for
Ghostscript. I'm tired of doing it manually on every machine. For my needs I
need a local port called "C:\Program Files\gs\output\tfile.ps" Please don't
bother me with a bunch of "why"s. It's what I need for this.

The following runs great if the port already exists.

rundll32 printui.dll,PrintUIEntry /if /f "C:\Program
Files\gs\gs8.64\lib\ghostpdf.inf" /r "c:\Program Files\gs\output\tfile.ps"
/m "Ghostscript PDF" /b "Ghostscript PS"

But if not, then it generates an error. I need to know how to add a new
local port. Can anyone help?

I also need to know how to set the new printer so it prints directly to the
printer. There's a radio button for this in the new printer wizard but no
switch for it that I can see in rundll32 printui.dll,PrintUIEntry

Thanks,

Keith
 
G

Greg Russell

....
For my needs I need a local port called
"C:\Program Files\gs\output\tfile.ps" ...
How do I do this? ... I need to know how to add a new
local port. Can anyone help?

You might check to see if the standard prnport.vbs meets your needs. Its
usage is described at
http://articles.techrepublic.com.com/5100-10878_11-5030819.html and other
places.

Although it addresses a standard TCP/IP port, you seem clever enough to test
its functionality with the file port you need.
 
J

Jose

How do I do this?

I need to set up some command line scripts to install printers for
Ghostscript. I'm tired of doing it manually on every machine. For my needs I
need a local port called "C:\Program Files\gs\output\tfile.ps"  Please don't
bother me with a bunch of "why"s. It's what I need for this.

The following runs great if the port already exists.

rundll32 printui.dll,PrintUIEntry /if /f "C:\Program
Files\gs\gs8.64\lib\ghostpdf.inf" /r "c:\Program Files\gs\output\tfile.ps"
/m "Ghostscript PDF" /b "Ghostscript PS"

But if not, then it generates an error. I need to know how to add a new
local port. Can anyone help?

I also need to know how to set the new printer so it prints directly to the
printer. There's a radio button for this in the new printer wizard but no
switch for it that I can see in rundll32 printui.dll,PrintUIEntry

Thanks,

Keith

What does the error message say when it fails to work as desired?
 
K

Keith G Hicks

Doesn't seem to work. I tried several variations on that and dont' end up
with a "local port" in the ports listing. The Prnport.vbs script requires an
IP address.

http://technet.microsoft.com/en-us/library/bb490975.aspx

Also, for anyone that might be interested in this in the future,
http://articles.techrepublic.com.com/5100-10878_11-5030819.html oddly enough
does not show all the switches for these functions. You're better off going
to http://technet.microsoft.com/en-us/library/bb490975.aspx or one of the
other 5 related ones if you need good info on them.
 
K

Keith G Hicks

"Operation could not be completed. The specified port is unknown."

(and changing the printer to print directly wihtout spooling was solved with
prncnfg.vbs)

How do I do this?

I need to set up some command line scripts to install printers for
Ghostscript. I'm tired of doing it manually on every machine. For my needs
I
need a local port called "C:\Program Files\gs\output\tfile.ps" Please
don't
bother me with a bunch of "why"s. It's what I need for this.

The following runs great if the port already exists.

rundll32 printui.dll,PrintUIEntry /if /f "C:\Program
Files\gs\gs8.64\lib\ghostpdf.inf" /r "c:\Program Files\gs\output\tfile.ps"
/m "Ghostscript PDF" /b "Ghostscript PS"

But if not, then it generates an error. I need to know how to add a new
local port. Can anyone help?

I also need to know how to set the new printer so it prints directly to
the
printer. There's a radio button for this in the new printer wizard but no
switch for it that I can see in rundll32 printui.dll,PrintUIEntry

Thanks,

Keith

What does the error message say when it fails to work as desired?
 
J

John John - MVP

I think that the drivers need to be signed. Right click My Computer and
select Properties then click on the Hardware tab and then click on the
Driver Signing button and see set to "Ignore".

John
 
G

Greg Russell

Also, for anyone that might be interested in this in the future,
http://articles.techrepublic.com.com/5100-10878_11-5030819.html oddly enough
does not show all the switches for these functions.

.... as clearly (?) stated in the article, along with instructions for
finding the XP system help that shows all possible switches for the "new
command tools".

It's unfortunate that it insists on a TCP/IP port, as a printer "port"
should be any abstract that fits the need. That limitation is consistent
with M$'s general failings however.

Glad the prncnfg.vbs worked for part of the issue you're dealing with,
though.
 
K

Keith G Hicks

That gets rid of the problem where windows gets in there and asks if it's
okay to install teh driver (which is okay by me) but it doesn't solve the
port does not exist problem.
 
J

John John - MVP

Add the port to the registry.

reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Ports" /v
"C:\Program Files\gs\output\tfile.ps" /t reg_sz

You have to restart the spooler service for changes to apply:

net stop spooler
net start spooler

John
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top