Mario-HS 5 Geschrieben 11. Oktober 2022 Melden Geschrieben 11. Oktober 2022 Hallöchen allerseits, ich habe mir vorgenommen, allerlei Befehle und Skripte, die ich mit der Zeit eingeprägt/erstellt habe, ein eine Art Tool zu verpacken. Da ich aber kein Coder bin, taste ich mich an die Sache recht rudimentär heran. Ich würde mir hier gerne das eine oder andere mal Hilfe erfragen, wenn das in Ordnung ist. Jetzt aber zu meinem Problem. Ich habe derzeit ein Fehler mit dem Testen von NTP-Servern. Ich rufe per Button.add_click eine Funktion auf, die die nötigen Befehle ausführt, aber durch Unkenntnis meinerseits wird der Befehl/Funktionsaufruf mehrfach mit unterschiedlichen Funktionsaufrufen ausgeführt. Gibt es eine Möglichkeit, von button.add_click() in der Function test.... eine Art reset zu machen, damit ich mehrere Zeit-Server nacheinander testen kann? Function test_0.de.pool.ntp.org() { $ProgressLog.Text = w32tm /stripchart /Computer:0.de.pool.ntp.org /samples:3 /dataonly | Format-Table -AutoSize | Out-String } Function test_1.de.pool.ntp.org() { $ProgressLog.Text = w32tm /stripchart /Computer:1.de.pool.ntp.org /samples:3 /dataonly | Format-Table -AutoSize | Out-String } Function test_2.de.pool.ntp.org() { $ProgressLog.Text = w32tm /stripchart /Computer:2.de.pool.ntp.org /samples:3 /dataonly | Format-Table -AutoSize | Out-String } Function test_3.de.pool.ntp.org() { $ProgressLog.Text = w32tm /stripchart /Computer:3.de.pool.ntp.org /samples:3 /dataonly | Format-Table -AutoSize | Out-String } Function start_0.de.pool.ntp.org() { IF ($CheckBox_Zeit_set.checked) { w32tm /config /syncfromflags:manual /manualpeerlist:"0.de.pool.ntp.org" w32tm /config /reliable:yes /update w32tm /resync $ProgressLog.Text = "Lokaler NTP-Server wurde auf NTP-Pool_Project-Server 0.de.pool.ntp.org festgelegt" | Format-Table -AutoSize | Out-String } else { $ProgressLog.Text = "Hacken zum Festlegen des Ausgewählten Zeitservers ist nicht gesetzt" | Format-Table -AutoSize | Out-String } } Function start_1.de.pool.ntp.org() { IF ($CheckBox_Zeit_set.checked) { w32tm /config /syncfromflags:manual /manualpeerlist:"1.de.pool.ntp.org" w32tm /config /reliable:yes /update w32tm /resync $ProgressLog.Text = "Lokaler NTP-Server wurde auf NTP-Pool_Project-Server 1.de.pool.ntp.org festgelegt" | Format-Table -AutoSize | Out-String } else { $ProgressLog.Text = "Hacken zum Festlegen des Ausgewählten Zeitservers ist nicht gesetzt" | Format-Table -AutoSize | Out-String } } Function start_2.de.pool.ntp.org() { IF ($CheckBox_Zeit_set.checked) { w32tm /config /syncfromflags:manual /manualpeerlist:"2.de.pool.ntp.org" w32tm /config /reliable:yes /update w32tm /resync $ProgressLog.Text = "Lokaler NTP-Server wurde auf NTP-Pool_Project-Server 2.de.pool.ntp.org festgelegt" | Format-Table -AutoSize | Out-String } else { $ProgressLog.Text = "Hacken zum Festlegen des Ausgewählten Zeitservers ist nicht gesetzt" | Format-Table -AutoSize | Out-String } } Function start_3.de.pool.ntp.org() { IF ($CheckBox_Zeit_set.checked) { w32tm /config /syncfromflags:manual /manualpeerlist:"3.de.pool.ntp.org" w32tm /config /reliable:yes /update w32tm /resync $ProgressLog.Text = "Lokaler NTP-Server wurde auf NTP-Pool_Project-Server 3.de.pool.ntp.org festgelegt" | Format-Table -AutoSize | Out-String } else { $ProgressLog.Text = "Hacken zum Festlegen des Ausgewählten Zeitservers ist nicht gesetzt" | Format-Table -AutoSize | Out-String } } Function NTP-Pool_Project() { $listBox_NTP_Server.Items.Clear() [void]$listBox_NTP_Server.Items.Add('0.de.pool.ntp.org') [void]$listBox_NTP_Server.Items.Add('1.de.pool.ntp.org') [void]$listBox_NTP_Server.Items.Add('2.de.pool.ntp.org') [void]$listBox_NTP_Server.Items.Add('3.de.pool.ntp.org') $listBox_NTP_Server.Add_SelectedIndexChanged( { switch ($this.SelectedItem) { "0.de.pool.ntp.org" { $Button_Tab03_test.Enabled = $true $Button_Tab03_test.add_click({ test_0.de.pool.ntp.org }) $Button_Tab03_start.Enabled = $true $CheckBox_Zeit_set.Enabled = $true $Button_Tab03_start.add_click({ start_0.de.pool.ntp.org }) } "1.de.pool.ntp.org" { $Button_Tab03_test.Enabled = $true $Button_Tab03_test.add_click({ test_1.de.pool.ntp.org }) $Button_Tab03_start.Enabled = $true $CheckBox_Zeit_set.Enabled = $true $Button_Tab03_start.add_click({ start_1.de.pool.ntp.org }) } "2.de.pool.ntp.org" { $Button_Tab03_test.Enabled = $true $Button_Tab03_test.add_click({ test_2.de.pool.ntp.org }) $Button_Tab03_start.Enabled = $true $CheckBox_Zeit_set.Enabled = $true $Button_Tab03_start.add_click({ start_2.de.pool.ntp.org }) } "3.de.pool.ntp.org" { $Button_Tab03_test.Enabled = $true $Button_Tab03_test.add_click({ test_3.de.pool.ntp.org }) $Button_Tab03_start.Enabled = $true $CheckBox_Zeit_set.Enabled = $true $Button_Tab03_start.add_click({ start_3.de.pool.ntp.org }) } } }) } Zitieren
zahni 566 Geschrieben 12. Oktober 2022 Melden Geschrieben 12. Oktober 2022 Ist das eine Domäne? Wenn ja: Wozu ist das Script gut? Zitieren
Nobbyaushb 1.506 Geschrieben 12. Oktober 2022 Melden Geschrieben 12. Oktober 2022 vor 8 Minuten schrieb zahni: Ist das eine Domäne? Wenn ja: Wozu ist das Script gut? Eben. Den NTP brauchen nur die DC und eigentlich nur der PDC Emulator. Setzt man in der Domäne einmal per GPO und fertig Zitieren
Mario-HS 5 Geschrieben 13. Oktober 2022 Autor Melden Geschrieben 13. Oktober 2022 Das weiß ich auch, dass das per GPO einstellbar ist. Das beantwortet meine Frage allerdings nicht. Zitieren
zahni 566 Geschrieben 13. Oktober 2022 Melden Geschrieben 13. Oktober 2022 Wie schon geschrieben: Wir haben da keine Erfahrungen, weil das niemand macht. Du kannst Dich in der Domäne auch nicht mehr anmelden, wenn die Uhrzeit nicht mit der Uhr in den DC's übereinstimmt (ich glaube, per default sins max, 3 Minuten Abweichung zulässig). Vielleicht schreibt Du zunächst, was das Ziel der Übung ist? 1 Zitieren
Mario-HS 5 Geschrieben 14. Oktober 2022 Autor Melden Geschrieben 14. Oktober 2022 Zitat Du kannst Dich in der Domäne auch nicht mehr anmelden, wenn die Uhrzeit nicht mit der Uhr in den DC's übereinstimmt (ich glaube, per default sins max, 3 Minuten Abweichung zulässig). Weiß ich alles Zitat ich habe mir vorgenommen, allerlei Befehle und Skripte, die ich mit der Zeit eingeprägt/erstellt habe, ein eine Art Tool zu verpacken Wie im ersten Post gesagt, ich habe mir vorgenommen, allerlei Befehle und Skripte, die ich mit der Zeit eingeprägt/erstellt habe, ein eine Art Tool zu verpacken. Zitieren
BOfH_666 583 Geschrieben 14. Oktober 2022 Melden Geschrieben 14. Oktober 2022 vor 14 Minuten schrieb Mario-HS: Wie im ersten Post gesagt, ich habe mir vorgenommen, allerlei Befehle und Skripte, die ich mit der Zeit eingeprägt/erstellt habe, ein eine Art Tool zu verpacken. Meiner Meinung nach wäre dann ein PowerShell-Modul die bessere Wahl. Das ist ist deutlich flexibler, leichter zu pflegen und weniger fehleranfällig, denke ich. Zitieren
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.