Создал объект групповой политики для запуска пакетного файла при завершении работы компьютеров домена XP с целью удаления старых профилей пользователей.
Для этого я использую приложение DeleteProfiles от OptimumX.
cd C:\
if exist "Program Files (x86)" GOTO Exit (Checks if XP or not)
if exist DeleteProfiles GOTO COMMAND
:CopyDeleteProfiles
md DeleteProfiles
copy /Y \\SomeShare\SomeFolder\DeleteProfiles\DeleteProfiles.exe
C:\DeleteProfiles\
:COMMAND
pushd C:\DeleteProfiles\
start /Wait DeleteProfiles.exe /MIN:14 /Y
(/Min: # = Удалить профили старше #, а /y удаляет запросы «да» или «нет»)
:Exit
End
Работает нормально, но при выключении появляется экран CMD с выводом программы. Как мне его убрать?
Реальная проблема здесь в том, что пользователи могут закрыть программу, что приводит к остановке скрипта. Если я не могу заставить это исчезнуть, я хотел бы, по крайней мере, сделать экран не закрываемым.
решение1
Как мне это сделать?
Вы можете использовать start
с /b
опцией:
start /b /Wait DeleteProfiles.exe /MIN:14 /Y
/B
- Запустить приложение без создания нового окна. В этом случае ^C будет проигнорирован - оставив ^Break как единственный способ прервать приложение.
Источник -начинать
Дальнейшее чтение
- Индекс AZ командной строки Windows CMD
- начинать- Запустить программу, команду или пакетный скрипт (откроется в новом окне).