1. ホーム
  2. スクリプト・コラム
  3. パワーシェル

PowerShellでPrintManagementを使用してプリンターを管理する例

2022-02-05 19:13:14

Windows 8.1 または Windows Server 2012 R2 の場合

Windows 8.1およびWindows Server 2012 R2では、ローカルおよびリモートマシンのプリンターを管理するためのすべてのコマンドを含むコンポーネント、"PrintManagement,"を導入しています。

次の例では、まずプリンターをインストールし、共有し、いくつかのプロパティを設定することで、プリンタードライバーとプリンターポートのインストールを実演しています。

コピーコード コードは以下の通りです。

$ComputerName = $env:COMPUTERNAME
$DriverName = 'Samsung SCX-483x 5x3x Series XPS'
$IPAddress = '192.168.2.107'
$PortName = 'NetworkPrint_192.168.2.107'
$PrinterName = 'BWPrint'
$ShareName = 'Office 12'
Add-PrinterDriver -ComputerName $ComputerName -Name $DriverName
Add-PrinterPort -Name $PortName -ComputerName $ComputerName
Add-Printer -ComputerName $ComputerName -Name $PrinterName -DriverName $DriverName -Shared -ShareName $ShareName -PortName $PortName
Set-PrintConfiguration -ComputerName $ComputerName -PrinterName $PrinterName -PaperSize A4

もちろん、あなたがこれを実行するためには、変数 $IPAddress が実際に存在するプリンタ・アドレスを指すように調整する必要があります。ComputerNameをローカルマシン名からリモートマシン名に変更します。

このようにPrintManagementコンポーネントのPowerShellコマンドを全て確認することができます。

コピーコード コードは以下の通りです。

PS> Get-Command -Module PrintManagement

CommandType Name ModuleName                                              
----------- ---- ----------                                              
Function Add-Printer PrintManagement                                         
Function Add-PrinterDriver PrintManagement                                         
Function Add-PrinterPort PrintManagement                                         
Function Get-PrintConfiguration PrintManagement                                         
Function Get-Printer PrintManagement                                         
Function Get-PrinterDriver PrintManagement                                         
Function Get-PrinterPort PrintManagement                                         
Function Get-PrinterProperty PrintManagement                                         
Function Get-PrintJob PrintManagement                                         
Function Read-PrinterNfcTag PrintManagement                                         
Function Remove-Printer PrintManagement                                         
Function Remove-PrinterDriver PrintManagement                                         
Function Remove-PrinterPort PrintManagement                                         
Function Remove-PrintJob PrintManagement                                         
Function Rename-Printer PrintManagement                                         
Function Restart-PrintJob PrintManagement                                         
Function Resume-PrintJob PrintManagement                                         
Function Set-PrintConfiguration PrintManagement                                         
Function Set-Printer PrintManagement                                         
Function Set-PrinterProperty PrintManagement                                         
Function Suspend-PrintJob PrintManagement                                         
Function Write-PrinterNfcTag PrintManagement

実は、これらはPowerShellの関数の一部であり、コンパイルされたバイナリコマンドではありません。