#c #windows #affinity
Вопрос:
Можно ли немедленно получать уведомления, когда внешняя сторона изменяет привязку ваших программ к процессу? Без опроса GetProcessAffinityMask(). Например, если пользователь решит изменить его с помощью диспетчера задач.
Ответ №1:
ИЗМЕНИТЬ: Этот ответ был дан до редактирования, в котором добавлялось «Без опроса GetProcessAffinityMask()» и не указывался язык проверки.
Да, это выполнимо, например, с помощью PowerShell. Установите некоторые базовые данные один раз и время от времени проводите сравнения.
Вы можете получить процессы с Get-Process
(документацией), которые возвращают System.Diagnostics.Process
объект (документацию) со Process.ProcessorAffinity
свойством (документация).
Таким образом, получение близости будет выглядеть так:
Get-Process PROCESS | Select-Object ProcessorAffinity
И с этим — вы можете настроить свои уведомления (по почте, на рабочем столе или на любом другом).
Комментарии:
1. На самом деле я хотел знать, можно ли немедленно получать уведомления в моей программе на C , если кто-то нарушил связь с моими процессами, в идеале без опроса
2. «Без опроса GetProcessAffinityMask ()».
3. @IInspectable на этот вопрос был дан ответ 9 часов назад, до того, как произошло редактирование с помощью «Без опроса GetProcessAffinityMask ()». Проверьте, пожалуйста, перед использованием.
4. Первоначальный вопрос требовал «уведомления» . Опрос — это не уведомление.
5. Я понимаю уведомление как письмо, подсказку, окно сообщения или что-либо еще, что уведомляет меня об изменении. Обратите внимание на предложение в конце моего ответа: «И с этим — вы можете настроить свои уведомления (по почте, на рабочем столе или на любом другом)».