gelöst Powershell Neustart GUI

Mitglied: 136430

136430 (Level 1)

19.06.2018 um 16:33 Uhr, 1996 Aufrufe, 9 Kommentare

Hallo

ich möchte in einer GUI einem User einen Neustart eines Remotecomputers zur Verfügung stellen, der user führt das Script aus, bekommt die Anzeige mit dem Restart button, klickt auf den Button und der Neustart des Remotepcs wird gestartet..... klappt nur leider nicht, die Funktion scheint tot zu sein, könnt ihr mir bitte helfen, wo mein Fehler & Denkfehler ist.
Mitglied: user217
19.06.2018 um 16:36 Uhr
shutdown /? in eine Batch taugt nicht?
Bitte warten ..
Mitglied: colinardo
19.06.2018, aktualisiert um 18:02 Uhr
Servus.
klappt nur leider nicht
Für diese alleinstehende Aussage in einem Admin Forum bekommst du hier heiße Öhrchen! Mach es manuell in der Konsole und du bekommst auch die passenden Meldungen was schief läuft.

-Credential Cred
  • Da fehlt erstens das Dollarzeichen für die Variable und zweitens gibt es die Definition der Credentials in deinem Skript oben nicht. Bite beachte zusätzlich auch die Variable-Scopes gerade wenn du mit Win-Forms und Sub-Scriptblocks hantierst!
  • Passende Firewall-Richtlinien zur Remote-Verwaltung sollten natürlich am Remote-PC gegeben sein.
  • Der User dessen Credentials verwendet werden muss den PC neu starten dürfen
  • Zusätzlich wenn das keine Domäne ist muss wegen der UAC am Remote-System noch ein Registry Eintrag gesetzt werden, damit per Remote lokale Admin Credentials eingesetzt werden können, Stichwort LocalAccountTokenFilterPolicy.
Danach ist ein Neustart Pflicht!

Grüße Uwe
Bitte warten ..
Mitglied: 136430
20.06.2018 um 10:05 Uhr
Servus Uwe

Zitat von colinardo:

Servus.
klappt nur leider nicht
Für diese alleinstehende Aussage in einem Admin Forum bekommst du hier heiße Öhrchen! Mach es manuell in der Konsole und du bekommst auch die passenden Meldungen was schief läuft.


Es gibt in der Konsole keine Fehlermeldung, sonst hätte ich diese längst hier niedergeschrieben

-Credential Cred
  • Da fehlt erstens das Dollarzeichen für die Variable und zweitens gibt es die Definition der Credentials in deinem Skript oben nicht. Bite beachte zusätzlich auch die Variable-Scopes gerade wenn du mit Win-Forms und Sub-Scriptblocks hantierst!
  • Passende Firewall-Richtlinien zur Remote-Verwaltung sollten natürlich am Remote-PC gegeben sein.
  • Der User dessen Credentials verwendet werden muss den PC neu starten dürfen
  • Zusätzlich wenn das keine Domäne ist muss wegen der UAC am Remote-System noch ein Registry Eintrag gesetzt werden, damit per Remote lokale Admin Credentials eingesetzt werden können, Stichwort LocalAccountTokenFilterPolicy.
Danach ist ein Neustart Pflicht!

Grüße Uwe

Das Dollarzeichen vor "Cred" habe ich wie beim Computername hier niedergeschrieben, in Wirklichkeit steht dort der direkte Hostname und die tatsächlichen Credentials, ich weiß auch, dass ich das mit einer Variable hätte schreiben können

Alles spielt sich innerhalb einer Domäne ab, mit dem normalen Restart-computer Befehl, kann ich jeden PC neustarten, nur nicht innerhalb des Programms mit der GUI.
Bitte warten ..
Mitglied: colinardo
20.06.2018, aktualisiert um 10:45 Uhr
Zitat von 136430:

Es gibt in der Konsole keine Fehlermeldung, sonst hätte ich diese längst hier niedergeschrieben
Dann schau ins Log des Remote Computers.
Und Fehlerausgaben die in einem Scriptblock einer GUI auflaufen werden nicht unbedingt angezeigt, du musst sie z.B. mit Try catch abfangen und dann mit write-host explizit ausgeben lassen.
Das Dollarzeichen vor "Cred" habe ich wie beim Computername hier niedergeschrieben, in Wirklichkeit steht dort der direkte Hostname und die tatsächlichen Credentials, ich weiß auch, dass ich das mit einer Variable hätte schreiben können
Wir sehen das hier aber dann nicht was du dort evt. falsch gemacht haben könntest.
Also besser immer den kompletten Code anonymisiert so wie er bei dir steht.
Alles spielt sich innerhalb einer Domäne ab, mit dem normalen Restart-computer Befehl, kann ich jeden PC neustarten, nur nicht innerhalb des Programms mit der GUI.
Tja ohne deinen tatsächlichen Code kann man dir hier nicht helfen, das funktioniert hier problemlos.

Ich vermute nach wie vor ein Variable Scope Problem auf deiner Seite! Daran scheitern die meisten Anfänger bei der GUI Entwicklung.
Da du hier das ganze vermutlich in Functions verpackt hast liegt meine Vermutung sehr nahe.
Bitte warten ..
Mitglied: 136430
20.06.2018 um 10:52 Uhr
Zitat von colinardo:

Zitat von 136430:

Es gibt in der Konsole keine Fehlermeldung, sonst hätte ich diese längst hier niedergeschrieben
Dann schau ins Log des Remote Computers.
Und Fehlerausgaben die in einem Scriptblock einer GUI auflaufen werden nicht unbedingt angezeigt, du musst sie z.B. mit Try catch abfangen und dann mit write-host explizit ausgeben lassen.

ok das probiere ich
Das Dollarzeichen vor "Cred" habe ich wie beim Computername hier niedergeschrieben, in Wirklichkeit steht dort der direkte Hostname und die tatsächlichen Credentials, ich weiß auch, dass ich das mit einer Variable hätte schreiben können
Wir sehen das hier aber dann nicht was du dort evt. falsch gemacht haben könntest.
Also besser immer den kompletten Code anonymisiert so wie er bei dir steht.
Alles spielt sich innerhalb einer Domäne ab, mit dem normalen Restart-computer Befehl, kann ich jeden PC neustarten, nur nicht innerhalb des Programms mit der GUI.
Tja ohne deinen tatsächlichen Code kann man dir hier nicht helfen, das funktioniert hier problemlos.

Ich vermute nach wie vor ein Variable Scope Problem auf deiner Seite! Daran scheitern die meisten Anfänger bei der GUI Entwicklung.
Da du hier das ganze vermutlich in Functions verpackt hast liegt meine Vermutung sehr nahe.

kannst du mir bezüglich des vermuteten Scope-Problems mitteilen, was ich genau noch in den Code hinzufügen muss?
Bitte warten ..
Mitglied: colinardo
20.06.2018, aktualisiert um 10:56 Uhr
kannst du mir bezüglich des vermuteten Scope-Problems mitteilen, was ich genau noch in den Code hinzufügen muss?
Ohne den kompletten Code ist es nich nichtt möglich dir zu helfen.
Les mal den Link zum Thema oben, dann verstehst du vielleicht was ich meine!
Bitte warten ..
Mitglied: 136430
20.06.2018 um 11:02 Uhr
Zitat von colinardo:

kannst du mir bezüglich des vermuteten Scope-Problems mitteilen, was ich genau noch in den Code hinzufügen muss?
Ohne den kompletten Code ist es nich nichtt möglich dir zu helfen.
Les mal den Link zum Thema oben, dann verstehst du vielleicht was ich meine!

Ich bin etwas durcheinander, ich habe den kompletten Code gepostet bei -Computername Host bei -Credential Domäne/Domänenadmin, das ist der einzige Unterschied zum Original
Bitte warten ..
Mitglied: colinardo
LÖSUNG 20.06.2018, aktualisiert um 11:11 Uhr
Jetzt wo ichs gerade nochmal genau ansehe, dein Fehler liegt hier
$Button1.Add_Click({$ButtonNeustart_Click})
Die geschweiften Klammern sind zu viel, die hat schon die Variable als Scriptblock.
Das sollte hier also so aussehen
Bitte warten ..
Mitglied: 136430
20.06.2018 um 11:12 Uhr
Das war die Lösung! vielen Dank!
Bitte warten ..
Heiß diskutierte Inhalte
Ubuntu
HAProxy-Wi: Installation des Pakets geht nicht - ich hätte keine enabled Repos
itnirvanaQuestionUbuntu26 Comments

Hallo, von der Seite möchte ich gerne HAProxy-Wi installieren ich führe das hier aus Dann kommt -> There ar ...

Multimedia
Fernseher im Empfang GEMA-pflichtig?
CaptainDuskyQuestionMultimedia26 Comments

Guten Tag, wenn ich in einer Firma einen Fernseher im Empfang betreibe, dort aber nur Nachrichten laufen lasse, ist ...

Windows Server
PowerShell Script für MailVersand mit Anhang
solved klausk94QuestionWindows Server20 Comments

Hallo Zusammen, ich bin aktuell etwas am verzweifeln an einem PS Script für den Emailversand Das Script funktioniert, jedoch ...

LAN, WAN, Wireless
RJ45 Buchsen Verbindung
solved DennisAdm1nQuestionLAN, WAN, Wireless19 Comments

Ich habe als Aufgabe bekommen die LAN-Verbindung in einem Haus zu fixen, dabei ist mir aufgefallen, dass der RJ45-Stecker ...

Windows 10
Windows 7 zu Windows 10 weiterhin kostenlos möglich?
solved CubeHDQuestionWindows 1018 Comments

Guten Abend, ist es möglich einen vorhandenen Windows 7 Key für Windows 10 zu verwenden? Kennt ihr vielleicht andere ...

Batch & Shell
Frage zu batch (cmd ) - Drag und Drop - Bearbeitung bei nicht geschlossenem DOS Fenster
solved AN34MemQuestionBatch & Shell17 Comments

Hallo. Vielleicht mag meine Frage etwas seltsam sein, jedoch möchte ich gerne wissen wie das umzusetzen ist: Angenommen man ...

Ähnliche Inhalte
Windows 10
Powershell GUI Skript Filehash
gelöst BaphometFrageWindows 104 Kommentare

Hallo Community, da ich mich erst sehr kurzzeitig mit der PS befasse tauchen immer wieder Fragen auf. > Ich ...

Batch & Shell
Powershell - GUI Elemente verstecken
gelöst BuggerFrageBatch & Shell2 Kommentare

Hallo zusammen, ich möchte mit einer Checkbox einige Elemente verstecken. Dafür habe ich diesen Befehl: Somit zeigt er das ...

Batch & Shell
Powershell GUI immer im Vordergrund
gelöst H41mSh1C0RFrageBatch & Shell8 Kommentare

Aloa in die Runde, Ziel der Übung war es das Fenster immer im Vordergrund zu halten. Wenn ich mich ...

Batch & Shell
PowerShell GUI, Variable in Klammern
gelöst SYNTAX1001FrageBatch & Shell4 Kommentare

Hallo Zusammen, ich möchte gern eine Variable in Klammern so definieren, dass der Inhalt der Variable in ein Befehl ...

Batch & Shell

PowerShell - Funktionsergebnis in GUI darstellen

SpeedzFrageBatch & Shell5 Kommentare

Hallo zusammen, ich habe ein PowerShell Skrip, welches eine GUI erstellt. In dieser GUI möchte ich gerne alle aktiven ...

Batch & Shell

Postfachordner mit Powershell Gui erstellen

gelöst blackhawk17FrageBatch & Shell4 Kommentare

Guten Morgen, für verschiedene Anwendungsfälle ist es notwendig z.B. für freigegebene Postfächer, ab und an zusätzliche Ordner anzulegen. Hierfür ...

Berechtigungs- und IdentitätsmanagementBerechtigungs- und IdentitätsmanagementWebdienste und -serverWebdienste und -serverDatenbankenDatenbankenMonitoring & SupportMonitoring & SupportHybrid CloudHybrid CloudSmall Business ITSmall Business IT