Powershell Remotezugriff auf Registry
Hallo Leute,
ich habe ein Skript geschrieben welches aus der Registry auf einem Remoteserver etwas auslesen soll.
Problem: ich gehe mit einer "Enter-pssession -Computername serverXY" drauf und dann will ich auf HKLM\SYSTEM\x drauf.
Das Problem ist, ich habe eine GUI gebastelt welche das ganze ausführen soll.
Jedoch wenn ich auf dieses Pfad zugreife dann geht er mir von der Session runter und sucht am lokalen Server den Pfad.
Wüsstet ihr da weiter?
Danke im Voraus.
ich habe ein Skript geschrieben welches aus der Registry auf einem Remoteserver etwas auslesen soll.
Problem: ich gehe mit einer "Enter-pssession -Computername serverXY" drauf und dann will ich auf HKLM\SYSTEM\x drauf.
Das Problem ist, ich habe eine GUI gebastelt welche das ganze ausführen soll.
Jedoch wenn ich auf dieses Pfad zugreife dann geht er mir von der Session runter und sucht am lokalen Server den Pfad.
Wüsstet ihr da weiter?
Danke im Voraus.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 316931
Url: https://administrator.de/forum/powershell-remotezugriff-auf-registry-316931.html
Ausgedruckt am: 22.04.2025 um 07:04 Uhr
15 Kommentare
Neuester Kommentar
Geht auch ganz ohne PSSession und PSRemoting wenn man den RemoteRegistry-Dienst startet:
Hier ein Beispiel:
Mit Powershell in einer Datei eine Zeile auslesen
Grüße Uwe
Hier ein Beispiel:
Mit Powershell in einer Datei eine Zeile auslesen
Grüße Uwe
Wenn nicht gerade der Weg das Ziel ist, dann solltest Du Dir mal PRINTMIG ansehen.
https://technet.microsoft.com/de-de/library/cc722360(v=ws.11).aspx
https://technet.microsoft.com/de-de/library/cc722360(v=ws.11).aspx
Zitat von @kushMichi:
Ja Problem ist halt, ich will das mit Powershell machen und dies ist auch so vorgegeben..
Haben wir doch schon alles durchgekaut ...Ja Problem ist halt, ich will das mit Powershell machen und dies ist auch so vorgegeben..
Drucker per PowerShell auf Printserver installieren
Und diese Druckerdaten liegen in der HKLM\SYSTEM\
Und für die Daten des Druckers und der Ports braucht man noch nicht mal die Registry auslesen, das geht simpel per WMI und Get-WMIObject der Klassen (Win32_Printer / Win32_TCPIPPrinterPort).Auch auf die Print-Queues kann man komfortabel ohne Registry zugreifen:
Add-Type -AssemblyName System.Printing
# Konstanten
$adminServer = [System.Printing.PrintSystemDesiredAccess]::AdministrateServer
$adminPrinter = [System.Printing.PrintSystemDesiredAccess]::AdministratePrinter
# Printserver-Zugriff erhalten
$server = new-object System.Printing.LocalPrintServer $adminServer
# Print-Queue des gewünschten Druckers filtern
$queues = $server.GetPrintQueues()
foreach($q in $queues){
# Administrativen ZUgriff auf den PrintQueue erhalten
$objPrinter = new-object System.Printing.PrintQueue -argumentList $server,$q.Name,$adminPrinter
$objPrinter
}
Grüße Uwe
Invoke-Command bietet den Parameter -Argumentlist dem man Variablen mitgeben kann die dann in der Remote-Session über param() zur Verfügung stehen
-Argumentlist akzeptiert auch ein Array du musst nur jeden Parameter dann im param() Block hinzufügen.
Steht auch alles in der Doku
https://technet.microsoft.com/de-de/library/hh849719.aspx?f=255&MSPP ...
Invoke-Command -ComputerName ServerXYZ -Argumentlist $global:textvariable -Scriptblock {
param($var1)
# in $var1 steht dann der Inhalt von deiner übergebenen Variable
}
Steht auch alles in der Doku
https://technet.microsoft.com/de-de/library/hh849719.aspx?f=255&MSPP ...
Du scheinst wirklich keinen blassen Schimmer zu haben, natürlich verwendest du im Skriptblock dann nur $var1 wo du die Variable nutzen willst!! nicht param($var1), das steht nur am Anfang im Skriptblock zur Parameterdeklaration. Man oh man les dir doch bitte die Doku oben durch oder kannst du nicht lesen ??
Ok dann ist das ja was anderes
wenn du gleich zu Beginn in solch ein Fahrwasser geworfen wirst ohne Basics zu Funktionen und Scopes.
Dann noch viel Erfolg.
Dann noch viel Erfolg.