Цитата SavmiN:
Logon-скрипт - очень любопытно! поясни! »
|
Пуск\Выполнить:
gpedit.msc
Путь:
Конфигурация пользователя\Конфигурация Windows\Сценарии
сюда можно добавлять любые *.BAT, *.CMD, *.VBS или *.JS скрипты на вход и выход... правда локальные политики (в отличие от доменных) отрабатывают одинаково для всех локальных пользователей, поэтому распознавание пользователей придется встраивать в скрипт... вот доработанный вариант батника, который:
для пользователя USER-1: останавливает и отключает службу Планировщика задач и перегружает "Обозреватель"
для пользователя USER-2: восстанавливает состояние Планировщика и перезапускает службу Диспетчера печати.
Код:

@echo off
IF "%USERNAME%"=="User-1" (
CALL :SC_STOP SCHEDULE
CALL :SC_DISABLE SCHEDULE
CALL :SC_RESTART BROWSER
)
IF "%USERNAME%"=="User-2" (
CALL :SC_ENABLE SCHEDULE
CALL :SC_START SCHEDULE
CALL :SC_RESTART SPOOLER
)
EXIT
:SC_STOP
:: -----
Set STATUS=RUNNING
@echo Остановка сервиса "%1"...
:SC_STOP_LOOP
SC STOP %1 >nul
For /F "Tokens=3 Usebackq Delims=: " %%i in (`SC QUERY %1^|FIND "STATE"`) Do SET STATUS=%%i
If NOT "%STATUS%"=="STOPPED" GOTO :SC_STOP_LOOP
@echo Сервис остановлен!
:: -----
GOTO :EOF
:SC_START
:: -----
Set STATUS=STOPPED
@echo Запуск сервиса "%1"...
:SC_START_LOOP
SC START %1 >nul
For /F "Tokens=3 Usebackq Delims=: " %%i in (`SC QUERY %1^|FIND "STATE"`) Do SET STATUS=%%i
If NOT "%STATUS%"=="RUNNING" GOTO :SC_START_LOOP
@echo Сервис запущен!
:: -----
GOTO :EOF
:SC_RESTART
:: -----
CALL :SC_STOP %1
CALL :SC_START %1
:: -----
GOTO :EOF
:SC_ENABLE
:: -----
SC CONFIG %1 start= demand >nul
@echo Сервис %1 включен!
:: -----
GOTO :EOF
:SC_DISABLE
:: -----
SC CONFIG %1 start= disabled >nul
@echo Сервис %1 отключен!
:: -----
GOTO :EOF