Tengo una aplicación y estoy tratando de asegurarme de que se ejecute en un entorno seguro. En primer lugar, compruebo si Windows is genuine, lo que hace que sea más probable que el usuario lo mantenga actualizado. Si no, solo aparece un mensaje advirtiendo al usuario que existe un posible riesgo porque todavía necesita validar Windows.¿Cómo detectar si un virusscanner y/o firewall está instalado? (Y algunas otras Q relacionadas con la seguridad.)
Ahora, quiero hacer un poco más. También quiero verificar si el usuario ha instalado un virusscanner. No me importa cuál, siempre y cuando haya instalado uno. Luego, lo mismo para verificar si un firewall está instalado. Y si es posible, quiero verificar cuándo el usuario actualizó su Windows/Scanner/Firewall la última vez solo para asegurarse de que no sea demasiado viejo. Entonces:
1) ¿Cómo verifico si un virusscanner está instalado?
2) ¿Cómo puedo determinar cuándo se actualizó el virusscanner?
3) ¿Cómo detectar cuando el virusscanner hizo su última verificación de sistema completo?
4) ¿Cómo puedo detectar si un firewall está instalado y activo?
5) ¿Cómo puedo verificar cuando Windows recibió su actualización más reciente?
Básicamente, cuando comience mi aplicación quiero mostrar una pantalla con advertencias (solo una vez por día) en caso de que alguna de estas cosas tenga un problema. Esto porque mi aplicación funciona con todo tipo de información confidencial que el usuario recopila de sus clientes. (Que incluye números de cuentas bancarias, números de identificación de pasaportes, NAW + DOB, ingresos y mucho más). Básicamente, si el sistema tiene un problema, el usuario debe confirmar que conoce estos problemas. Quita la posible responsabilidad de mi solicitud si continúa sabiendo que su sistema es posiblemente inseguro ...
¿Y el lenguaje? Básicamente C++ o Delphi para ejemplos de WIN32 y C# para ejemplos de .NET. Se trata más de .NET/Windows API/.NET que del lenguaje.
C# está bien, aunque el idioma no importa. Es la llamada API/.NET lo que cuenta. –
Genial, espero que te haya ayudado entonces. Su pregunta es un poco difícil de responder porque tiene muchas partes. Una vez que hayas explorado WMI un poco, si todavía estás atrapado en uno de ellos en particular, publica una nueva pregunta y solo concéntrate en un punto. De esa manera, con suerte obtendrá a alguien que sepa exactamente dónde buscar esos datos. No sé WMI muy bien más allá de un nivel básico. –