ユーザーの操作なしで Windows XP にプリンタを追加する方法

Microsoft Windows 2000 については、次の資料を参照してください。189105

概要

Windows XP では、コマンド ラインでプリンタをインストールすることができます。この機能は、ログオン スクリプトやスケジュールされたイベントを使用してユーザーのグループにプリンタを追加または削除する場合に特に便利です。


Microsoft Windows NT 4.0 には Con2prt.exe のようなツールが含まれていますが、Con2prt.exe ツールで追加または削除可能なのはネットワーク プリンタのみです。Windows XP を使用すると、ローカル プリンタを変更または削除することができます。その結果、管理者は、ユーザーにバッチ ファイルまたはログオン スクリプトを実行させることにより、ユーザーの印刷機能をあらゆる面で制御することができます。


: ログオン スクリプトまたはクライアント ベースのバッチ ファイルでこのコマンドを使用するには、クライアント コンピュータで Windows XP または Windows 2000 が動作している必要があります。ログオン スクリプトはクライアント コンピュータ上で動作するため、Windows NT 4.0 クライアントではこのコマンドを処理することができません。


また、これらのコマンドは管理者のワークステーションまたはサーバーから実行できるため、プリンタは、実際のコンピュータからインストールすることを必要とせず、クライアント コンピュータにプッシュ インストールすることができます。

詳細

プリンタ ユーザー インターフェイス (PrintUIEntry) コマンドの最も一般的な使用例を以下に示します。


: このコマンドは、Windows XP または Windows 2000 ベースのコンピュータでのみ実行可能です。また、Windows XP、Windows 2000、Windows NT 4.0 ベースのサーバーまたはワークステーションにプリンタをインストールあるいは削除する場合にのみ使用することができます。


以下の例では、SERVER という名前のコンピュータ上に Agfa プリンタ ドライバを追加し、論理プリンタを作成します。


: 以下の行はどちらもバッチ ファイルに記述することも、コマンド プロンプトで順に入力することもできます。これら 2 つの行は、画面のサイズによって折り返して表示されることがありますが、それぞれ 1 行で記述または入力します。
rundll32 printui.dll,PrintUIEntry /ia /c\\server /m "AGFA-AccuSet v52.3" /h "Intel" /v "Windows 2000" /f %windir%\inf\ntprint.inf

rundll32 printui.dll,PrintUIEntry /if /b "Test Printer" /c\\SERVER /f "%windir%\inf\ntprint.inf" /r "lpt1:" /m "AGFA-AccuSet v52.3"
以下の例では、SERVER という名前のコンピュータ上で Agfa プリンタを削除します。
rundll32 printui.dll,PrintUIEntry /dl /n "Test Printer" /c\\SERVER
使用可能なスイッチの詳細を参照するには、コマンドの後に /? を入力し、Enter キーを押します。


さらに、コマンド プロンプトで次のように入力します。
rundll32 printui.dll,PrintUIEntry /?
上記のコマンドを実行すると、スイッチの使用法の一覧が、このメソッドの詳細な使用例と共に表示されます。


: 以下の構文例は、標準 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 ポートは作成されず、次のエラー メッセージが表示される場合があります。
プリンタ ユーザー インターフェイス

プリンタ rundll コマンドに失敗しました。

コマンド : /if /b "Test Printer" /f %windir%\inf\ntprint.inf /r "IP_157.57.50.98" /m "HP Laserjet 4000 Series PCL" /Z.


誤ったプリンタ名を入力したか、指定されたプリンタがサーバーに接続されていません。[ヘルプ] をクリックすると詳細が表示されます。

IPP プリンタの追加方法の例

rundll32 printui.dll,PrintUIEntry /b "DisplayPrinterName on http" /x /n "part of the n switch" /if /f %windir%\inf\ntprint.inf /r "http://hostname/printers/sharename/.printer" /m "HP Laserjet 4000 Series PCL"
: /? を使用しても、/x スイッチに関する説明を参照することはできません。/x スイッチは、/n が実際には使用されていない場合でも、それが使用されていることを想定します。また、HP Laserjet 4000 Series PCL 以外のプリンタを使用している場合もあります。/x フラグは、インストールを "Web ポイントと印刷インストール" として処理します。このフラグは、プリンタが見せかけの (masq) プリンタであることを示します。見せかけのプリンタは、部分的にローカル プリンタおよびネットワーク プリンタの両方として機能します。見せかけのプリンタは、リモート プリント サーバーから豊富な通知を受信します。/x オプションを使用しない場合、プリンタはリダイレクト ポートを持つローカル プリンタとして機能します。これは良好に機能しますが、非常に限定された通知しか受信しません。
この資料に記載されているサードパーティ製品は、マイクロソフトと関連のない他社の製品です。明示または黙示にかかわらず、これらの製品のパフォーマンスや信頼性についてマイクロソフトはいかなる責任も負わないものとします。

関連情報

この資料は米国 Microsoft Corporation から提供されている Knowledge Base の Article ID 314486 (最終更新日 2005-08-10) を基に作成したものです。


この資料に含まれているサンプル コード/プログラムは英語版を前提に書かれたものをありのままに記述しており、日本語環境での動作は確認されておりません。
プロパティ

文書番号:314486 - 最終更新日: 2005/09/22 - リビジョン: 1

フィードバック