2017-10-19 1 views
-1

Ich muss die IP-Adresse meines Standard-Netzwerkdruckers mit einem Powershell-Skript finden.Standard-Netzwerkdrucker finden IP-Adresse

Ich habe bisher Folgendes, es gibt mir den Namen des Druckers, aber ich brauche auch die IP-Adresse?

#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 

Es gibt mir nicht die IP-Adresse des Pritners und bringt nichts zurück.

+1

Das ist, weil 'Win32_Printer' keine IP-Adressinformationen enthalten: https://msdn.microsoft.com/en-us/library/aa394363(v=vs.85).aspx – Manu

+0

Sie tun weiß ich, wie ich die IP-Adressinformationen bitte bekommen würde? –

+0

Kennen Sie den Hostnamen des Druckers? Wenn dies der Fall ist, können Sie DNS verwenden, um die benötigten Informationen mit der Methode '[System.Net.Dns] :: GetHostByName()' .net nachzuschlagen – TheIncorrigible1

Antwort

-1

Dies funktioniert tatsächlich und gibt eine IP-Adresse, es war aufgrund einer Beschränkung auf meinem Computer, getestet im Netzwerk, wir wollen es tatsächlich auf und es funktioniert gut.

Vielen Dank an alle, die auf dem Weg beigetragen haben.

Danke,