Jump to content
Melde dich an, um diesen Inhalt zu abonnieren  
roccomarcy

[Powershell] Netzwerkdrucker entfernen

Empfohlene Beiträge

Guten Morgen,

 

ich habe ein abgewandeltes Skript aus dem Technet gefunden, welches mir Netzwerkdrucker, die auf dem Server nicht mehr verfügbar sind, anzeigt.

Ich würde diese Drucker auch gern automatisch lösen, leider komme ich mit dem Skript nicht weiter.

Kann mir jemand ggf. Hilfestellung geben oder einen nötigen Hinweis, wie ich das Skript modifizieren muss?

#requires -Version 2.0

Function Test-OSCPrinter
{
	Try
	{	
		Get-WmiObject -Class Win32_Printer -ErrorAction Stop | Where {$_.Network} | Select-Object Name,
		@{Name="Verbindungsstatus";Expression={$PrinterName = $_.Name; 
											Try
											{
												$NetworkObj = New-Object -ComObject WScript.Network
												$NetworkObj.AddWindowsPrinterConnection("$PrinterName")
												"Verbunden"
											}
											Catch
											{"Nicht verbunden"}}}
	}
	Catch
	{
		Write-Warning "Fehler, läuft der Spooler-Dienst?"
	}
}

Test-OSCPrinter

Die Ausgabe des Skript ist wie folgt:

 

unbenannt82s02.jpg

 

Gruß

 

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Nu ja... halt einfach im 1. Catch: 

{

  $_.delete()

  "Nicht verbunden - Objekt gelöscht"

}

 

Oder ggf., wenn man kein $_ mehr hat, so:

(Get-WmiObject -class win32_printer | where-object {$_.Name -eq $PrinterName} ).delete()

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Kann mir jemand erklären wieso Get-Printer und Get-WmiObject -class win32_printer nur die Lokal installierten Ports auflistet und nicht die Netzwerkdrucker??

Wenn ich das lokal ausführe funktioniert es natürlich, aber auf einem Remote Computer werden nur die Drucker aufgelistet welche keine Netzwerkdrucker sind.

 

Müsste ich hier zuerst eine "New-PsSesssion" auf dem Remotecomputer öffnen und dann den Befehl Get-Printer per Scriptblock übergeben? 

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Machst Du bitte für ein neues Thema auch einen neuen Thread auf?

 

Wenn Du remote auf einen anderen Computer zugreifst, siehst Du nur die "Umgebung" des Anwenders/Administrators, mit dem Du auf den remote Computer zugreifst. Dieser hat üblicherweise keine Netzwerkdrucker verbunden bzw. es wird beim remote Zugriff nicht das komplette Profile geladen in dem die Netzwerkdrucker verbunden sind.

bearbeitet von BOfH_666
  • Like 1

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
Melde dich an, um diesen Inhalt zu abonnieren  

×