Имя пользователя:
Пароль:
 | Правила  

Компьютерный форум OSzone.net » Клиентские ОС Microsoft » Microsoft Windows 10 » Разное - [решено] Автозапуск при разблокировке, входе и в зависимости от RDP

Ответить
Настройки темы
Разное - [решено] Автозапуск при разблокировке, входе и в зависимости от RDP

Пользователь


Сообщения: 117
Благодарности: 0


Конфигурация

Профиль | Отправить PM | Цитировать


Можно как-то сделать, чтоб содержимое shell:startup автоматически запускалось при каждом разблокировании системы?
Поясню: на компе два юзера, часть софта не может висеть в процессах одновременно у двух юзеров. создал батник, где процессы убиваются и открываются вновь уже для вошедшего юзера.
Таким образом, если я поюзал комп, заблокировал, пришла жена, поюзала - все впорядке, у нее после меня содержимое shell:startup запускается.
Но если она заблочит комп и вновь за него сяду я под своей учеткой - автозапуск в shell:startup уже не срабатывает, ибо я не заново вошел в систему, а разблокировал её под собой.
Как сделать так, чтоб нужный мне батник выполняелся при КАЖДОМ разблокировании компа под текущим юзером?

Отправлено: 13:18, 30-04-2020

 

(*.*)


Сообщения: 36574
Благодарности: 6706

Профиль | Сайт | Отправить PM | Цитировать


Включите аудит Computer Configuration-Windows Settings-Security Settings-Advanced Audit Policies-Logon/Logoff-Audit Other Logon/Logoff Events
Запускайте из планировщика по событию 4801 https://docs.microsoft.com/windows/s...ing/event-4801

-------
Канал Windows 11, etc | Чат @winsiders

Это сообщение посчитали полезным следующие участники:

Отправлено: 13:36, 30-04-2020 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Пользователь


Сообщения: 117
Благодарности: 0

Профиль | Отправить PM | Цитировать


Изображения
Тип файла: png scr1.PNG
(56.3 Kb, 19 просмотров)

Для начала пробую перейти в принципе с shell:startup на Планировщик ,создал задание на "При входе", до "При разблокировке" пока не дошел.
Выяснилось, что запуск не срабатывает под двумя пользователями. Либо под одним, либо под другим.
Как правильно его настроить, под каким юзером запускать нужно? Если под Dmitrii, то скрипт срабатывает только при входе в систему Dmitrii. Если войдет другой юзер, под ним не срабатывает.
Если под "Администраторы", то запуск происходит только под тем, кто последний раз заходил в задачу и нажимал "Ок"

Отправлено: 14:07, 30-04-2020 | #3


(*.*)


Сообщения: 36574
Благодарности: 6706

Профиль | Сайт | Отправить PM | Цитировать


Analog, установить пользователя (а не группу, как вы сделали) - выполнять для всех пользователей. Либо для каждого пользователя свое задание - зависит от конкретной задачи, вам виднее.

-------
Канал Windows 11, etc | Чат @winsiders


Отправлено: 14:15, 30-04-2020 | #4


Пользователь


Сообщения: 117
Благодарности: 0

Профиль | Отправить PM | Цитировать


Получилось, спасибо.
А есть возможность не выполнять автозапуск, если учетка подключается через RDP?
Поставил RDP Wrapper - для второго юзера при входе срабатывает автозапуск и у предыдущего часть софта убивается. То есть, можно это запретить в случае коннекта именно по RDP?

Отправлено: 16:34, 01-05-2020 | #5


(*.*)


Сообщения: 36574
Благодарности: 6706

Профиль | Сайт | Отправить PM | Цитировать


Вложения
Тип файла: txt GetLogonSession.ps1.txt
(1.8 Kb, 13 просмотров)

Цитата Analog:
А есть возможность не выполнять автозапуск, если учетка подключается через RDP? »
Надо скриптовать. Наверное, можно проверять вывод quser, и если sessionname для этого юзера не console, то это RDP.

P.S. Я спросил Василия Гусева, нет ли простого способа на пошике. Теперь есть;)

-------
Канал Windows 11, etc | Чат @winsiders


Отправлено: 18:14, 01-05-2020 | #6


Пользователь


Сообщения: 117
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата Vadikan:
Теперь есть »
сложновато для меня.
указанный файлик - что с ним делать? PowerShell не понимает.

Отправлено: 11:09, 04-05-2020 | #7


Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


Цитата Analog:
указанный файлик - что с ним делать? PowerShell не понимает. »
Для начала — переименовать из .txt в .ps1.

Отправлено: 11:39, 04-05-2020 | #8


Пользователь


Сообщения: 117
Благодарности: 0

Профиль | Отправить PM | Цитировать


Изображения
Тип файла: png scr1.PNG
(2.2 Kb, 13 просмотров)

Да, так не ругается. Теперь нужно этот скрипт в Планировщике поместить в Действия, перед bat-ником который мне убивает\перезапускает софт?

Отправлено: 12:28, 04-05-2020 | #9


(*.*)


Сообщения: 36574
Благодарности: 6706

Профиль | Сайт | Отправить PM | Цитировать


Analog, теперь у вас следующий уровень квеста - вам надо все на PowerShell перевести:)
Я смотрю вы файлы складываете прямо в корень С - плохая идея (видимо, с выключенным UAC работаете).

В консоли можете так экспериментировать, с учетом того, что скрипты в C:\scripts, а вы туда перешли cd c:\scripts

Для начала выясните свой SID
Код: Выделить весь код
Get-LocalUser | fl *
Дальше дотсорсинг скрипта
Код: Выделить весь код
. GetLogonSession.ps1
и выполнение функции
Код: Выделить весь код
$session = Get-LogonSession
$session
Будет список всех сессий.

Теперь фильтруете по своему SID
Код: Выделить весь код
$session | Where-Object {$_.SID -eq 'S-1-5-21-xxxxxxxx-xxxxxxxx-xxxxxx-xxxx'}
Вам нужно исключить RDP, т.е. RemoteInteractive (если вы не подключены к RDP, в списке такой сессии нет).
Код: Выделить весь код
$rdp = $session | Where-Object {$_.SID -eq 'S-1-5-21-xxxxxxxx-xxxxxxxx-xxxxxx-xxxx' -and $_.LogonType -eq 'RemoteInteractive'}
$rdp -eq $null
True
И теперь запускаете свои программы, если условие соблюдается
Код: Выделить весь код
if ($rdp -eq $null) {
Start-Process notepad
Start-Process calc}
Для планировщика же дописываете в скрипт
Код: Выделить весь код
$session = Get-LogonSession
$rdp = $session | Where-Object {$_.SID -eq 'S-1-5-21-xxxxxxxx-xxxxxxxx-xxxxxx-xxxx' -and $_.LogonType -eq 'RemoteInteractive'}
if ($rdp -eq $null) {
Start-Process notepad
Start-Process calc}
И настраиваете запуск.
Программа или сценарий: powershell
Аргументы: -ExecutionPolicy Bypass -WindowStyle Hidden -file C:\scripts\GetLogonSession.ps1

Как-то так. См. также Запуск без моргания окон PowerShell

-------
Канал Windows 11, etc | Чат @winsiders

Это сообщение посчитали полезным следующие участники:

Отправлено: 13:23, 04-05-2020 | #10



Компьютерный форум OSzone.net » Клиентские ОС Microsoft » Microsoft Windows 10 » Разное - [решено] Автозапуск при разблокировке, входе и в зависимости от RDP

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Разное - Не срабатывает автозапуск программ при доступе по RDP obtim Microsoft Windows 7 4 29-04-2015 17:01
Система - Автозагрузка (автозапуск) тайла Windows 8 при входе в систему. Tuapse1965 Программное обеспечение Windows 0 03-04-2013 18:40
Автозагрузка, автозапуск тайла Windows 8 при входе в систему. Tuapse1965 AutoIt 0 03-04-2013 18:36
Загрузка - Автозагрузка (Автозапуск) тайла Windows 8 при входе в систему. Tuapse1965 Microsoft Windows 8 и 8.1 0 03-04-2013 09:56
2008 R2 - [решено] RDP - авторизация при входе anatolyfilosov Windows Server 2008/2008 R2 6 26-09-2011 03:13




 
Переход