web-dev-qa-db-ja.com

コマンドラインから標準のTCP / IPプリンターポートを追加するにはどうすればよいですか?

コマンドラインからRundll32.exe tcpmonui.dll、LocalAddPortUIを使用して、プリンターの標準TCP/IPポートを追加する方法はありますか?

または、コマンドラインから標準のTCP/IPプリンターポートを追加するその他の方法。

8
Adam L

this ページによると、XPでprnportコマンドを使用できます。

1
MALeamy

他の人がこれを見つけられるように、ここにexactコマンド(cmd.exeから)を実行します。これは、Windows 7でプログラムによってネットワークプリンターを追加するために実行します(これは、多くの操作を行った後でも、まれにしか見えないようです)ググリング):

cscript c:\Windows\System32\Printing_Admin_Scripts\en-US\prnport.vbs ^
-a -r IP_10.0.0.100 -h 10.0.0.100

rundll32 printui.dll,PrintUIEntry /if /b "printer" /f %windir%\inf\prnhp002.inf^
/r "IP_10.0.0.100" /m "HP LaserJet 4200/4300 PCL6" /Z

(私が知らなかったように、あなたが知らなかった場合、^はcmd.exeの行継続文字です)。おそらく、上記のファイルとは異なるinfファイルを使用する必要があります。 C:\Windows\infのすべてのファイルをgrepして、プリンタードライバー(HP LaserJet 4200/4300 PCL6 ")のexactテキストを探して、必要なファイルを見つけます。

もう1つの便利なトリックは、PowerShellワンライナーを実行して、存在する可能性のある古いプリンターをすべて消去することです(明確でない場合は、現在インストールされているすべてのプリンターが削除されます)。

powershell -command "foreach ($p in Get-WmiObject Win32_Printer) {$p.Delete()}"
13
Chris

あなたは次のような意味です:

Net Use [local port to bind to ie LPT1] \\ComputerName\printer_share /PERSISTENT:YES

注意:

  • これはURIだけでなくIPアドレスでも機能します
  • ローカルプリンターをループバックできますNet Use LPT1: \\127.0.0.1:9100
2
Greg Buehler

このスレッドはネクロ化されていますが、ここでプリンターのインストールを実行する方法を示します。

これは、Windowsのベアメタル再インストールを行うときにコピー機とプリンターをインストールするために使用するスクリプトです。

::Creating a Printer Port
cd c:\windows\system32\printing_admin_scripts\en-us\
Cscript Prnport.vbs -a -r 000.000.000.000 -h 000.000.000.000

::Install Printer Driver
rundll32 printui.dll,PrintUIEntry /ia /m "EXACT NAME OF DRIVER AS WRITTEN IN .inf FILE" /f "\\server\file\.inf"

::Create Printer in System
rundll32 printui.dll,PrintUIEntry /if /b "PRINTER NAME GOES HERE" /f "\\server\file.inf" /r "000.000.000.000" /m "EXACT NAME OF DRIVER AS WRITTEN IN .inf FILE"

000.000.000.000をプリンターのIPに変更してください。\server\file\.infは、ドライバー用の.infファイルの場所です。

これにより、何もない状態から、インストール済みの機能するプリンターが得られます。

0
ThatoneITguy

このページ は、TCP/IPポートがすでに存在しない限り不可能であることを示唆しています。

注次のサンプル構文は、標準のTCP/IPポートが作成されている限り正しく機能します:

rundll32 printui.dll,PrintUIEntry /if /b "Test Printer" /f %windir%\inf\ntprint.inf /r  "IP_157.57.50.98" /m "HP Laserjet 4000 Series PCL" /Z

プリンター名を正しく入力しない場合、またはサーバーに接続されていないプリンターを指定した場合、標準のTCP/IPポートが作成されず、次のエラーメッセージが表示されることがあります...

0
djhowell