Как эффективно отслеживать создание процессов с помощью Python в Windows? В настоящее время отсутствуют кратковременные Python

Программы на Python
Ответить
Anonymous
 Как эффективно отслеживать создание процессов с помощью Python в Windows? В настоящее время отсутствуют кратковременные

Сообщение Anonymous »

Моя цель: Я пытаюсь постоянно отслеживать создание процессов с помощью Python (без особых предварительных требований), но не могу фиксировать кратковременные процессы. Я хочу, чтобы этот скрипт Python работал в фоновом режиме, и хочу иметь возможность видеть все процессы, которые создаются во время работы этого процесса (даже те, которые создаются и быстро удаляются. Что-то похожее на procmon).
Я пробовал использовать psutil и wmi в Python, но мне так и не удалось захватить все создания процессов. Некоторые процессы по-прежнему отсутствуют.
Я пробовал следующие методы:
  • Я пробовал psutil — нет не работает для недолговечных процессов (эти процессы создаются и удаляются до завершения итерации).
    Фрагмент кода:

Код: Выделить всё

while True:
for proc in psutil.process_iter(['pid', 'name']):

  • Проверил wmi. Также не работает для недолговечных процессов (эти процессы создаются и удаляются до завершения итерации).

    Проверил wmi. Также не работает для кратковременных процессов (эти процессы создаются и удаляются до завершения итерации).

    Проверено wmi. Также не работает для кратковременных процессов (эти процессы создаются и удаляются до завершения итерации).

    Проверено wmi. Также не работает для недолговечных процессов.

    Проверил wmi. Также не работает для недолговечных процессов (эти процессы создаются и удаляются до завершения итерации).

    Проверено wmi. Также не работает для недолговечных процессов (эти процессы создаются и удаляются до завершения итерации). li>

Код: Выделить всё

    c = wmi.WMI()
# Monitor creation of processes
watcher = c.Win32_Process.watch_for(raw_wql="SELECT * FROM __InstanceCreationEvent WITHIN 1 WHERE TargetInstance ISA 'Win32_Process'")

while True:
new_event = watcher()
print(new_event.Caption)
Метод, который я собираюсь попробовать (в крайнем случае).
3. Мне еще предстоит включить «Создание процесса аудита» и попробовать прочитать журналы событий.
Я хотел, чтобы этот код работал без особых предварительных условий, поэтому это мое последнее средство.
Есть похожие вопросы, но ни один из них не отвечает на вопрос.
  • Как контролировать выполнение программы процесса в Windows
  • Монитор создания процессов Windows в реальном времени в python
Мои сомнения следующие:

< li>Есть ли другой способ сделать это в Python?
Если в Python это невозможно сделать, придется ли мне использовать какой-либо другой язык, чтобы добиться успеха в этом?< /li>


Подробнее здесь: https://stackoverflow.com/questions/791 ... -currently
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»