Как предотвратить открытие той же программы на терминальном сервере «тем же пользователем» с помощью командной строки?

Как предотвратить открытие той же программы на терминальном сервере «тем же пользователем» с помощью командной строки?

У меня есть несколько пользователей, которые используют приложение удаленного рабочего стола (Server 2008), и когда они открывают созданный мной файл .BAT, он открывает две программы... однако мне нужно предотвратить многократное открытие одной и той же программы (в данном случае Outlook)...

Я создал эту строку в своем .BAT-файле...

tasklist /nh /fi "imagename eq outlook.exe" | find /i "Outlook.exe" > nul ||(start /min Outlook.exe)

Все работает отлично... за исключением того, что у меня есть несколько пользователей, которые входят в этот «терминальный сервер» и запускают один и тот же файл .BAT... так вот, когда входит «Пользователь 2», он не запускает Outlook, потому что он уже отображается как работающий в диспетчере задач под «ПОЛЬЗОВАТЕЛЕМ 1»...

Мне нужно уметь различать "imagename" and "username"... ну, "имя пользователя" будет%USERPROFILE%

решение1

Как предотвратить открытие той же программы на терминальном сервере «тем же пользователем» с помощью командной строки?

У меня есть несколько пользователей, которые входят в этот «терминальный сервер» и запускают один и тот же .BAT-файл... так вот, когда входит «Пользователь 2», он не запускает Outlook, потому что он уже отображается как работающий в диспетчере задач под «ПОЛЬЗОВАТЕЛЬ 1».

Попробуйте применить следующую логику, поскольку она будет использовать %Username%переменную окружения только для получения текущей TASKLISTзаписи для имени пользователя профиля учетной записи пользователя, который запускает эту команду. . .

КОМАНДЫ СПИСКА ЗАДАЧ ДЛЯ ПОЛУЧЕНИЯ ПРОЦЕССА ТОЛЬКО ДЛЯ ПОЛЬЗОВАТЕЛЯ, ЗАПУСТИВШЕГО ЕГО

TASKLIST /NH /FI "USERNAME eq %Username%" /FI "imagename eq outlook.exe"

ИСПОЛЬЗУЯ ВАШ ПРИМЕР ЛОГИКИ

TASKLIST /NH /FI "USERNAME eq %Username%" /FI "imagename eq outlook.exe" | find /i "Outlook.exe" > nul ||(start /min Outlook.exe)

Дополнительные материалы и ресурсы

Связанный контент