Командная строка всплывает случайно закрывается быстро

Если командная строка или окно неизвестной программы мигает с определенными или случайными интервалами без каких-либо действий, есть много шансов, что это задание планировщика заданий. Однако вы захотите узнать, какая программа запускалась, чтобы убедиться, что это не вредоносное ПО.

К тому времени, когда вы откроете Диспетчер задач и откроете вкладку Процессы или Сведения, процесс командной строки или неизвестная программа уже будут завершены.

Окно командной строки может закрываться так быстро, что у вас может даже не хватить времени посмотреть, что оно работает, или даже сделать снимок экрана с помощью PrintScreen.

В этом посте рассказывается о возможных причинах случайного всплывающего окна командной строки и о том, как найти точное имя неизвестной задачи, которая в последний раз выполнялась.

Командная строка всплывает случайно закрывается быстро

Это может быть автоматическое задание (задачи) обслуживания, особенно если окно командной строки мигает только тогда, когда система не используется в течение нескольких минут. Вы можете просмотреть список задач автоматического обслуживания с помощью PowerShell.

Вот другие возможности:

Фоновая задача Office 365

В библиотеке планировщика задач Microsoft\Office есть две запланированные задачи:

  • OfficeBackgroundTaskHandlerLogon запускается, когда пользователь входит в систему
  • OfficeBackgroundTaskHandlerRegistration запускается каждый час

При выполнении вышеуказанных задач они мгновенно открывают и закрывают окно командной строки, что может сильно раздражать пользователя. Обе задачи настроены для запуска в группе учетных записей «Пользователи». Настройка OfficeBackgroundTaskHandlerRegistration для запуска под учетной записью «Система» предотвратит появление всплывающих окон командной строки, и задача будет выполняться скрытой.

  1. Откройте планировщик задач, перейдите в раздел Microsoft\Office »
  2. Выберите OfficeBackgroundTaskHandlerRegistration, щелкните правой кнопкой мыши и выберите Свойства.
  3. Нажмите Изменить пользователя или группу, введите Система, ОК, ОК.

Утилита настройки драйвера

Существует стороннее программное обеспечение, называемое Driver Setup Utility, которое запускает задачи (через планировщик) для обновления драйверов через определенные промежутки времени, в результате чего командная строка автоматически открывается и закрывается. OEM-производители, такие как Acer, Gateway, Packard Bell, похоже, поставляют DriverSetupUtility в компьютеры. DriverSetupUtility или программа обновления драйверов настроена для запуска в качестве запланированной задачи каждый час в качестве ежедневной задачи, и при их запуске вы увидите что-то вроде этого:

 FINDSTR: не удается открыть C: \ ProgramData \ acer \ updater2 \ updater2.xml Системе не удается найти указанный путь. Невозможно получить доступ к файлу C: \ Program Files \ DriverSetupUtility \ FUB \ + FINDSTR: Невозможно открыть C: \ ProgramData \ packard bell \ updater2 \ updater2.xml Системе не удается найти указанный путь. Невозможно получить доступ к файлу C: \ Program Files \ DriverSetupUtility \ FUB \ + FINDSTR: Невозможно открыть C: \ ProgramData \ gateway \ updater2 \ updater2.xml Системе не удается найти указанный путь. Невозможно получить доступ к файлу C: \ Program Files \ DriverSetupUtility \ FUB \ + FINDSTR: Невозможно открыть C: \ ProgramData \ gateway \ updater2 \ updater2.xml 

Сторонние программы обновления драйверов не являются необходимыми для системы, и если она вам не нужна, откройте Панель управления → Программы и компоненты → Удалите с этого Утилиту настройки драйвера (или DriverSetupUtility).

У Dell, с другой стороны, есть собственная утилита SupportAssist, которая не запускает эти сумасшедшие пакетные файлы. Он имеет удобный интерфейс, и пользователь уведомляется о любых обновлениях для системы.

Узнайте, почему всплывающее окно командной строки

Не используете Office 365 или программу обновления драйверов? Если приведенная выше информация не применима в вашем случае, вот несколько общих методов отслеживания, которые вы можете использовать, чтобы сузить программу или задачу, которая запускается.

Трассировка монитора процесса

Если вы запустите трассировку Process Monitor для наблюдения за новыми процессами или действиями по созданию потоков, вы сможете определить, было ли окно командной строки или любая другая программа, которая появилась на экране (и быстро вышла), была запущена планировщиком задач или не. Для получения дополнительной информации см. Статью Как определить родительский процесс запущенного процесса в Windows?

Вот пример задания планировщика заданий, которое открыло окно командной строки. Создание процесса отслеживалось с помощью Process Monitor.

После того, как вы узнаете PID или родительский процесс, все, что вам нужно сделать, это найти этот PID на вкладке Подробности диспетчера задач. Это может быть указание на svchost.exe, который является хост-процессом, на котором выполняются службы Windows. Включение поля командной строки в диспетчере задач покажет сервисную группу. Если имя сервисной группы гласит "Schedule", то это «Планировщик заданий».

Process Monitor и Process Explorer из Windows SysInternals должны точно сказать, что в данный момент выполняется в фоновом режиме. Помимо этих замечательных утилит, для отслеживания запланированных задач вы также можете использовать встроенную утилиту командной строки планировщика задач SchTasks.exe или стороннюю утилиту TaskSchedulerView.

Вот как определить, было ли окно командной строки, которое последний раз мигало на экране, было запущено как задание планировщика заданий.

Вариант 1. Использование утилиты TaskSchedulerView

TaskSchedulerView от NirSoft показывает всю информацию о задачах. Этот инструмент отображает список всех задач из планировщика задач и позволяет отключить или включить несколько задач одновременно. Для каждой из перечисленных задач отображается следующая информация:

  • Название задачи
  • Описание
  • Положение дел
  • Скрытый (да / нет)
  • Последний запуск / следующий
  • Run Times
  • Папка задач
  • EXE-файл или COM-обработчик задачи
  • Количество пропущенных пробегов
  • и более…

В TaskSchedulerView сортируйте список по столбцу «Последний запуск» и дважды щелкните по последнему запуску, чтобы точно определить, какая программа была выполнена в последний раз.

Если задача является стандартной задачей Windows, просто игнорируйте ее. Если имя задачи или имя программы подозрительно, выполните полное сканирование системы с использованием вредоносного ПО Malwarebytes в дополнение к выполнению полного антивирусного сканирования с обновленными сигнатурами.

(Однако не все программы, работающие в фоновом режиме, являются запланированными задачами. Возможно, что программа, которая в данный момент выполняется, запускает другую программу или командную строку по законным причинам. Или она может выполняться из одной из нескольких точек входа запуска. Утилиты автозапуска, Process Explorer и Process Monitor должны дать вам четкое представление о запущенных процессах и записях автозапуска.)

Вариант 2. Использование SchTasks.exe для получения списка задач и времени последнего запуска

schtasks.exe историю запуска планировщика заданий можно с помощью инструмента консоли schtasks.exe .

Откройте окно командной строки с повышенными правами и введите:

 schtasks / query / FO TABLE / v | клип 

Примечание. Для запросов задач программа SchTasks.exe не требует запуска из командной строки с повышенными правами.

Вывод копируется в буфер обмена. Откройте Блокнот и вставьте вывод.

Вы увидите список задач и их полную информацию, включая время последнего запуска. Сопоставьте время с фактическим временем, когда неизвестное окно программы появилось и исчезло.

Нас особенно интересуют три столбца - Время последнего запуска, Имя задачи и Задача для запуска . Проверяйте эти поля до конца файла, так как этот список не сгруппирован и не отсортирован по времени последнего выполнения.

Импорт в Excel

Для детальной проверки создайте отчет CSV вместо формата отчета TABLE или LIST, используя эту команду:

 schtasks / query / FO CSV / V> d: \ tasks-list.csv 

Например, d: \ tasks-list.csv - это имя файла и путь, в который будет записан вывод. Откройте файл CSV с помощью Excel, измените порядок столбцов и отформатируйте их соответствующим образом. Сортировать по времени последнего запуска (по убыванию).

Встроенный планировщик заданий перечисляет время последнего выполнения и все другие сведения о заданиях, но проверка каждой папки вручную занимает много времени. С помощью SchTasks.exe или TaskSchedulerView вы можете выполнить работу за секунду.

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

Смотрите также

  • Как найти, какая программа вызвала неизвестное сообщение об ошибке?
  • Как использовать Process Monitor для отслеживания изменений в реестре и файловой системе?
  • Как определить родительский процесс запущенного процесса в Windows?

ПОХОЖИЕ СТАТЬИ