Ausführen eines Skripts auf Windows-Start ohne Benutzer angemeldet
Dies ist ein Windows 2003-Maschine wird eingeschaltet jeden morgen, aber niemand, der sich anmeldet, bis einige Stunden später.
Möchte ich die Zeit dazwischen zum ausführen einer backup-Skript c:\script\backup.cmd
Wie kann ich dieses unbeaufsichtigt, nachdem die Maschine gekommen ist?
Versuchte ich 2 registry-Schlüssel, aber dies führte zu das Skript wird ausgeführt, nachdem ein Benutzer sich anmeldet (das ist zu spät):
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices
Am Ende, die ich verwendet, Windows-Aufgabenplaner, der hat so eine option, aber ich Frage mich, ob es eine andere Möglichkeit?
InformationsquelleAutor der Frage Karl Thorwald | 2009-03-05
Du musst angemeldet sein, um einen Kommentar abzugeben.
Kurze Antwort: GPEDIT.MSC (Start, Ausführen, GPEdit.msc)
Windows 2000 und höher [1] bieten eine computer Startup-Skripte Sammlung in den Gruppenrichtlinien-editor:
Gibt es ein äquivalent Anmeldung Skript-Bereich (also nach dem starten des Computers, wenn sich ein Benutzer anmeldet) in der Benutzer-Konfiguration bit.
Mehr:
GPEDIT.MSC die Gruppenrichtlinien-Konsole Bearbeiten, und läuft gegen den lokalen computer Group Policy speichern, wenn es direkt verwendet, so ist es nützlich für die Einstellung der lokalen Parameter. Wenn Sie Active Directory verwenden, die die gleiche Schnittstelle verwendet wird, zu Bearbeiten Wald-hosted group policy objects (GPOs), so dass die gleichen Einstellungen sind verfügbar über eine Reihe von Maschinen.
Den Skripts zum starten des Computers ausführen in der computer Kontextd.h. LocalSystem wie Sie angemerkt haben, so können Sie oftmals nicht auf Netzwerk-Laufwerke, die verlangen, dass ein bestimmter Benutzer oder Gruppe die Mitgliedschaft zu arbeiten, und so weiter. Wenn der Computer auf das Netzwerk zugreifen, Sie in der Regel (mit Ausnahmen) verwenden Sie Ihre COMPUTERNAME$ Konto.
Einen startup-Skript ist eine schnelle und einfache Weg, um einen Laufenden Prozess, wenn die Maschine bootet.
Den computer Startvorgang wird betroffen sein durch die Zeit, die es dauert, um das Programm auszuführen, obwohl, so möchten Sie vielleicht, um sicherzustellen, dass Sie rufen Sie es mit der START-Befehl aus einer batch-Datei, oder die angeben, nicht zu warten, für die ausführbare Datei zu vervollständigen, was auch immer Skript-Sprache, die Sie verwenden. (der entscheidende Punkt, es ist: das Skript ausführen asynchrones sei denn, es ist kritisch, oder nicht brauchen, um ausgeführt werden asynchron cos es wird immer keine Zeit überhaupt. Lange Stiefel = unglücklich Benutzer).
Mit einem Win32-Dienst ist eine alternative - Sie können mit der SRVANY - Dienstprogramm aus dem Resource Kit, "service-ify" so ziemlich jede ausführbare Datei. VS.Net 2002 und später können Sie auch bauen Sie ein managed-service-direkt.
Und Task Scheduler bekommt viel mehr fähig ist, als von Vista/2008, in der Lage zum ausführen von Skripts beim Start, im Leerlauf, und/oder wenn die Ereignisprotokolle generiert werden, oder bestimmte andere Bedingungen sind erfüllt: es ist ziemlich cool! Geplante Aufgaben hat der mögliche Vorteil des seins in der Lage, um das Benutzerkonto anzugeben, unter dem der task ausgeführt wird, wenn das für Sie wichtig ist.
VORBEHALT Scriptor:
http://support.microsoft.com/kb/256320
Startup-Skripte Asynchron:
http://msdn.microsoft.com/en-us/library/ms811602.aspx
Vista-Aufgabenplanung (was ist neu):
http://technet.microsoft.com/en-us/appcompat/aa906020.aspx
[1] Windows XP, 2003, Vista/2008, Windows 7/2008R2, Windows 8/2012, Windows 8.1/2012R2, Windows 10/Windows Server 2016. Alles. Aber NT4 nicht!
InformationsquelleAutor der Antwort TristanK
Haben Sie bereits eine gute Lösung:
Setup eine geplante Aufgabe zum ausführen beim Start und lassen den Auftrag ausführen, wenn der Benutzer nicht angemeldet ist.
InformationsquelleAutor der Antwort GateKiller
Können Sie ein Skript ausführen bei Systemstart mithilfe von Gruppenrichtlinien gpedit.msc
InformationsquelleAutor der Antwort
Die Weise, die Sie bereits tun, diese scheint in Ordnung zu mir; allerdings, wenn Sie möchten ein alternativer Ansatz, der dann Leistungen erhalten, begann, wenn der Rechner bootet, so dass Sie schreiben konnten, einen Dienst, der erkennt, wenn es einen neuen Tag (damit für Neustarts) und wenn es dann läuft dein backup.
Wenn ich war, dies zu tun, als einen Dienst, den ich verwenden würde, TCL, weil ich weiß, dass es und wie es und er hat eine Verlängerung twapi , können Sie ein Skript ausführen als Dienst. Andere Skriptsprachen können auch haben ähnliche Einrichtungen.
InformationsquelleAutor der Antwort Jackson
Es ist, wenn Sie Active Directory verwenden. Wenn Sie isolieren können den computer in seinen eigenen ORGANISATIONSEINHEIT oder Verwendung der WMI-Filterung, konnte Sie weisen Sie ein GRUPPENRICHTLINIENOBJEKT, das hat ein startup-script für den computer. Dies würde sicherstellen, dass, selbst wenn jemand ging über den abgesicherten Modus und deaktiviert den Task-Scheduler beim Start und die Anbindung an die domain, das Skript laufen würde.
InformationsquelleAutor der Antwort K. Brian Kelley