BOfH_666 577 Geschrieben 13. April 2017 Melden Teilen Geschrieben 13. April 2017 Nur mal noch so aus Neugier: Wie groß ist das "Netzwerk", um das es hier geht? Zitieren Link zu diesem Kommentar
Pikus1234 0 Geschrieben 13. April 2017 Autor Melden Teilen Geschrieben 13. April 2017 hast ne PN erhalten. :jau: Zitieren Link zu diesem Kommentar
Sunny61 807 Geschrieben 13. April 2017 Melden Teilen Geschrieben 13. April 2017 Und diese Batch soll dann entsprechend 1200 Rechner prüfen? Verstehe ich das richtig? Das Problem ist ja leider nicht auf 1 PC oder auf zeitliche Regeln zu reduzieren, Tja, diese Info habe ich vorher noch in keinem deiner Postings gelesen. Es wäre schon hilfreich für alle die dir hier kostenlos in ihrer Freizeit helfen, VORHER alle Karten auf den Tisch zu legen. Und zum eigentlichen Problem, wenn ihr so eine grottige Lösung für 1200 Clients braucht, wäre es viel sinnvoller die Zeit in die Reparatur der Software zu stecken. Just my 2 Cents. Leb wohl Zitieren Link zu diesem Kommentar
zahni 554 Geschrieben 13. April 2017 Melden Teilen Geschrieben 13. April 2017 Wenn man den Dienst sowieso "gleichzeitig" auf allen PCs starten will, geht das auch per Task. Zitieren Link zu diesem Kommentar
tesso 375 Geschrieben 13. April 2017 Melden Teilen Geschrieben 13. April 2017 exit oder wscript.quit müssten dir zum beenden des Skriptes weiterhelfen. Zitieren Link zu diesem Kommentar
Pikus1234 0 Geschrieben 18. April 2017 Autor Melden Teilen Geschrieben 18. April 2017 Schade sunny, ich habe versucht alle Eventualitäten schriftlich in meinem Post zu erfassen. Es ging auch nicht darum, dass mir jemand bei der Neuausrichtung der Admin-Struktur oder Ähnlichem hilft. ICh wollte hier ein Script erarbeiten, welches im Bedarfsfall eine schnelle Hilfe darstellt. Und dazu benötige ich eben die nette Hilfe hier im Forum. Stand bisher dazu ist: Das Script tut schon seine Arbeit wie es soll. Allerdings habe ich es noch nicht geschafft das Script sauber zu beenden, wenn der Remotehost nicht erreichbar ist. Noch will das Script weiter den Dienst neu starten. Darum sollte ja die Routine vorher die IP ermitteln und so den Onlinestatus checken. Jetzt muss es aber heißen. if IPadr = "" then MsgBox "Von " & PCname & " konnte die IP-Adr. nicht ermittelt werden! Ursache: Offline oder Abbruch", , WScript.ScriptName dann beende dich an dieser Stelle!!!! Weder Exit noch End Sub klappen. Bei Wscript.quit beendet sich leider das Script auch wenn der Remotehost online ist. Ist der Remotehost online..... if not IPadr = "" then MsgBox PCname & " hat die IP-Adr. " & IPadr , , WScript.ScriptName dann soll ja der Dienst neu gestartet werden. Viell. hat hier jemand eine schnelle unkomplizierte Hilfe für mich parat. :) Zitieren Link zu diesem Kommentar
zahni 554 Geschrieben 18. April 2017 Melden Teilen Geschrieben 18. April 2017 Wie der Kollege weiter oben geschrieben hat, ist das mit Powershell ein Zweizeiler: https://msdn.microsoft.com/en-us/powershell/reference/5.1/microsoft.powershell.management/test-connection Ich muss jetzt mal schreiben: Wenn es mit Powershell geht, muss man sich mit VBScript nicht rumärgern. Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 18. April 2017 Melden Teilen Geschrieben 18. April 2017 (bearbeitet) ... per Powershell so hier: If(Test-Connection -Count 1 -Quiet -ComputerName "RemoteComputer"){ Get-Service -Name "Service" -ComputerName "RemoteComputer" | Restart-Service -Force } ... wenn der Host "RemoteComputer" nicht erreichbar ist, wird auch kein Service neu gestartet. ;) :cool: :D <SCNR> Wenn Du das Ganze in ein Script packst und es "parametriesierst" (heißt das überhaupt so?), dann kann man es mit dem Zielcomputer als Parameter aufrufen und die Sache ist erledigt. ... sind wir mal heute nicht so ... (wer kennt noch "Timur und sein Trupp"?) Nur mal so als Startpunkt könnte das dann als Script im einfachsten Fall so aussehen: param( [Parameter(Position=0, Mandatory=$true)] [ValidateNotNullOrEmpty()] [System.String] $ComputerName ) If(Test-Connection -Count 1 -Quiet -ComputerName $ComputerName){ Get-Service -Name "Service" -ComputerName $ComputerName | Restart-Service -Force } Mit einem beliebigen Namen als Powershell-Script (*.ps1) abgespeichert und in einer mit Adminrechten gestarteten Konsole aufgerufen, fragt das Script sogar nach dem Computernamen und startet den Service neu, wenn der Computer erreichbar ist. Den Service-Namen müsstest Du dann im Script natürlich noch entsprechend anpassen. Fragen? Fragen! ;) bearbeitet 18. April 2017 von BOfH_666 Zitieren Link zu diesem Kommentar
Beste Lösung Pikus1234 0 Geschrieben 18. April 2017 Autor Beste Lösung Melden Teilen Geschrieben 18. April 2017 Au ersteinmal vielen Dank für die unkomplizierte Hilfe. Ich habe deinen Vorschlag jetzt mal gespeichert und probiere mich mal daran aus. Nur als Zusatz habe ich das Problem, so profan es auch klang, gelöst und das Script läuft nun wie es soll. Am Ende muss es lauten: if IPadr = "" then MsgBox "Von " & PCname & " konnte die IP-Adr. nicht ermittelt werden! Ursache: Offline oder Abbruch", , WScript.ScriptName if not IPadr = "" then MsgBox PCname & " hat die IP-Adr. " & IPadr , , WScript.ScriptName if IPadr = "" then Wscript.quit Nur falls jemand überhaupt daran interessiert sein sollte. Am Ende war es so einfach dass man darauf nur zuletzt kommt. Jetzt werde ich doch mehr in Richtung Powershell schauen und mich daran versuchen. Vielen Dank allen Mitdenkenden. :thumb1: LG :jau: :) Zitieren Link zu diesem Kommentar
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.