我需要使用powershell脚本找到默认联网打印机的IP地址。
到目前为止,我有以下内容,它为我提供了打印机名称,但我也需要IP地址?
#Declare Global Variables
Set-Variable -Name DefaultPrinter -Scope Global -Force
cls
If ((Test-Path $env:APPDATA"\DefaultPrinter.txt") -eq $true) {
Remove-Item -Path $env:APPDATA"\DefaultPrinter.txt" -Force
}
$ComputerName = "localhost"
$DefaultPrinter = Get-WmiObject -Class win32_printer -ComputerName $ComputerName -Filter "Default='true'"
$DefaultPrinterPortIP = Get-WmiObject -Class Win32_TCPIPPrinterPort -ComputerName $ComputerName -Filter "name='$($DefaultPrinter.PortName)'" | Select-Object -ExpandProperty HostAddress
Write-Host "Default Printer: " -NoNewline
If ($DefaultPrinter.Name && $DefaultPrinterPortIP.HostAddress -ne $null) {
$DefaultPrinter.Name | Out-File -FilePath $env:APPDATA"\DefaultPrinter.txt" -Force -Encoding "ASCII"
Write-Host $DefaultPrinter.Name
} else {
$DefaultPrinter = "No Default Printer"
$DefaultPrinter | Out-File -FilePath $env:APPDATA"\DefaultPrinter.txt" -Force -Encoding "ASCII"
Write-Host $DefaultPrinter
#Cleanup Global Variables
Remove-Variable -Name DefaultPrinter -Scope Global -Force
它没有给我pritner的ip地址并且一直没有返回。
答案 0 :(得分:-1)
这实际上确实起作用并返回一个ip地址,这是由于我的电脑受到限制,在网络上测试我们实际上想要使用它并且它工作正常。
感谢所有为此做出贡献的人。
谢谢,