2009-07-30 13:20:35 +0000 2009-07-30 13:20:35 +0000
27
27

Automatycznie uruchamiaj skrypt po zalogowaniu się do systemu Windows

Jak mogę automatycznie uruchomić skrypt po zalogowaniu się do systemu Windows?

Chciałbym uruchamiać coś takiego za każdym razem, gdy loguję się do komputera:

echo %USERNAME% logged on at %DATE% %TIME% >> log.txt

Bonusem byłaby możliwość uruchomienia tego samego skryptu również za każdym razem, gdy odblokuję wygaszacz ekranu.

Odpowiedzi (6)

22
22
22
2009-07-30 13:36:28 +0000

Jeśli masz już skrypt:

Aby przypisać skrypt logowania do użytkownika lub grupy

  • Otwórz Zarządzanie komputerem.
  • W drzewie konsoli kliknij Użytkownicy.

Gdzie? Narzędzia systemowe/Lokalni użytkownicy i grupy/Użytkownicy

  • Kliknij dwukrotnie użytkownika, do którego chcesz przypisać skrypt logowania.
  • Kliknij zakładkę Profil.
  • W polu Skrypt logowania wpisz ścieżkę i nazwę skryptu logowania, który chcesz przypisać do tego użytkownika, a następnie kliknij przycisk OK. Ewentualnie tutaj jest przydatne “HowTo” od Microsoft

Tworzenie skryptów logowania

Możesz użyć skryptów logowania do przypisania zadań, które będą wykonywane, gdy użytkownik zaloguje się na danym komputerze. Skrypty mogą wykonywać polecenia systemu operacyjnego, ustawiać zmienne środowiska systemowego i wywoływać inne skrypty lub programy wykonywalne. Rodzina Windows Server 2003 obsługuje dwa środowiska skryptowe: procesor poleceń uruchamia pliki zawierające polecenia języka wsadowego, a Windows Script Host (WSH) uruchamia pliki zawierające polecenia Microsoft Visual Basic Scripting Edition (VBScript) lub Jscript. Do tworzenia skryptów logowania można użyć edytora tekstu. Niektóre zadania często wykonywane przez skrypty logowania obejmują:

  • Mapowanie dysków sieciowych.
  • Instalowanie i ustawianie domyślnej drukarki użytkownika.
  • Zbieranie informacji o systemie komputerowym.
  • Aktualizowanie sygnatur wirusów.
  • Aktualizowanie oprogramowania.
  • Poniższy przykładowy skrypt logowania zawiera polecenia VBScript, które wykorzystują Active Directory
  • Service Interfaces (ADSI) do wykonania trzech typowych zadań w oparciu o przynależność użytkownika do grupy:

Mapuje dysk H: na katalog domowy użytkownika przez wywołanie metody MapNetworkDrive obiektu WSH Network w połączeniu z właściwością UserName obiektu WSH Network. Za pomocą obiektu ADSI IADsADSystemInfo uzyskuje distinguished name aktualnego użytkownika, który z kolei służy do połączenia z odpowiednim obiektem użytkownika w Active Directory. Gdy połączenie zostanie nawiązane, lista grup, których członkiem jest użytkownik jest pobierana przy użyciu atrybutu memberOf użytkownika. Wielowartościowa lista nazw grup zostanie połączona przy pomocy funkcji Join języka VBScript w jeden łańcuch w celu ułatwienia wyszukiwania nazw grup docelowych.

Jeżeli bieżący użytkownik jest członkiem jednej z trzech grup zdefiniowanych w górnej części skryptu, to skrypt mapuje dysk G: użytkownika na współdzielony dysk grupy i ustawia domyślną drukarkę użytkownika na drukarkę grupy. Aby utworzyć przykładowy skrypt logowania

  • Otwórz Notatnik.
  • Skopiuj i wklej, lub wpisz, poniższe informacje:

  • W menu Plik kliknij polecenie Zapisz jako.

  • W polu Zapisz w kliknij katalog, który odpowiada folderowi współdzielonemu Netlogon kontrolera domeny (zazwyczaj SystemRoot\SYSVOL\Sysvol\DomainName\Scripts, gdzie DomainName jest w pełni kwalifikowaną nazwą domeny).

  • W polu Zapisz jako typ kliknij opcję Wszystkie pliki.

  • W polu Nazwa pliku wpisz nazwę pliku, a następnie .vbs, a następnie kliknij przycisk Zapisz. WSH używa rozszerzenia .vbs do identyfikacji plików, które zawierają polecenia VBScript.

19
19
19
2014-08-15 22:12:37 +0000

Możesz utworzyć zaplanowane zadanie, które będzie uruchamiane, gdy komputer zostanie odblokowany:

  1. Start ® Narzędzia administracyjne ®> Harmonogram zadań
  2. lewe okienko: wybierz Biblioteka Harmonogramu Zadań
  3. prawe okienko: kliknij Utwórz zadanie…. (UWAGA: jest to jedyny sposób, aby uzyskać prawidłowy wyzwalacz)
  4. w oknie dialogowym Utwórz zadanie:
  5. zakładka General – podaj nazwę dla swojego zadania
  6. zakładka Triggers – kliknij New… i wybierz On workstation unlock
  7. zakładka Action – kliknij New… i kliknij Browse…, aby zlokalizować swój skrypt
  8. zakładka Conditions – odznacz Start the task only if the computer is on AC power

Ponadto, ja zmodyfikowałem ścieżkę w skrypcie, aby brzmiała

echo %USERNAME% logged on at %DATE% %TIME% >> %USERPROFILE%\log.txt
```.
14
14
14
2009-07-30 13:21:37 +0000

Najprostszym sposobem, jaki przychodzi mi do głowy, byłoby umieszczenie tego w pliku .bat w folderze startowym.

Bardziej skomplikowanym sposobem byłoby dodanie pliku wsadowego do rejestru w kluczu rejestru

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run

.

2
2
2
2009-07-30 13:37:08 +0000

Dobrą alternatywną metodą jest stworzenie pliku wsadowego z poleceniami, które chcesz w nim uruchomić. Następnie należy określić w edytorze polityki na maszynie, że uruchamia skrypt logowania jako część procesu logowania. Szybka uwaga jest ta opcja jest dostępna tylko w XP Pro, a nie w wersji domowej. Group Policy Editor Tutorial Here

2
2
2
2010-05-14 12:50:45 +0000

Czy ktoś wie, czy można tego użyć do uruchomienia, gdy ekran jest zablokowany/odblokowany, jak również?

Jest na to sposób dla Windows 7 i/lub Windows Server 2008.

Użyj Harmonogramu zadań, utwórz nowe zadanie podstawowe, jako wyzwalacz użyj “Kiedy się zaloguję”.

2
2
2
2015-01-06 09:53:34 +0000

Nie ma takiej potrzeby! Windows ma już mechanizm, który rejestruje to dla ciebie w dzienniku zdarzeń. Identyfikator zdarzenia to 4624 (528 w systemach sprzed Visty).