Я создаю программное обеспечение, которое обнаруживает угрозы в системе, но для очистки этой системы требуется Microsoft Security Essentials. Поэтому я хочу знать, работает ли в системе Microsoft Security Essentials, поэтому я могу использовать эту утилиту для работы моего программного обеспечения. У меня уже есть это решение, чтобы проверить, установлен ли Microsoft Security Essentials, но мне нужно знать, работает ли он или нет? Заранее спасибо.Как проверить, что Microsoft Security Essential работает в фоновом режиме?
Чтобы Проверьте необходимую безопасность Microsoft Я осуществил следующий код
private static bool DoesMseExist()
{
string location = @"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall";
using (RegistryKey localMachineX64View =
RegistryKey.OpenBaseKey(RegistryHive.LocalMachine,
RegistryView.Registry64))
{
using (RegistryKey rk = localMachineX64View.OpenSubKey(location))
{
foreach (string subKey in rk.GetSubKeyNames())
{
using (RegistryKey productKey = rk.OpenSubKey(subKey))
{
if (productKey != null)
{
if (Convert.ToString(productKey.GetValue("DisplayName"))
.Contains("Microsoft Security Client"))
{
return true;
}
}
}
}
}
}
return false;
}
возможно дубликат [Как я могу знать, если процесс запущен?] (Http://stackoverflow.com/questions/262280/how-can-i-know-if-a-process-is- running) – Stijn
Используйте System.Management для запроса установленного продукта защиты от вредоносных программ. Используйте экспериментальную программу WMI Code Creator. Google «wmi query antivirus», чтобы узнать больше. –
Возможный дубликат [Проверить статус антивируса в C#] (http://stackoverflow.com/questions/4750507/check-anti-virus-status-in-c-sharp) –