Título: Detectar Proceso Padre (VB.net) Publicado por: **Aincrad** en 15 Marzo 2019, 20:45 pm Hola, No ce como hacerle, Pero quiero Saber si se puede Detectar por ejemplo:
Sin la cmd o algún otro programa abre mi app quiero detectar eso. pero no se como hacerlo, si alguien me puede ayudar. Gracias de antemano. Lo que necesitaría saber es cual es el Proceso padre que ejecuta mi app. Título: Re: Detectar Proceso Padre (VB.net) Publicado por: Eleкtro en 15 Marzo 2019, 22:42 pm Por orden de menor a mayor velocidad de ejecución:
Saludos. Título: Re: Detectar Proceso Padre (VB.net) Publicado por: **Aincrad** en 15 Marzo 2019, 23:27 pm 1) Es posible Detectar que proceso hace una llamada por ejemplo al Kernel32.dll y que llamada esta haciendo por ejemplo VirtualProtectEx?
Título: Re: Detectar Proceso Padre (VB.net) Publicado por: Eleкtro en 16 Marzo 2019, 00:10 am 1) Es posible Detectar que proceso hace una llamada por ejemplo al Kernel32.dll y que llamada esta haciendo por ejemplo VirtualProtectEx? Sí, mediante API hooking puedes averiguar que proceso realiza una llamada a una función específica, en este caso VirtualProtectEx. Es un tema algo complejo que requiere cierto entendimiento y documentación. No soy ningún experto en el tema, pero aquí tienes un ejemplo que publiqué para interceptar las llamadas a la función CreateProcess mediante la librería comercial Deviare Api Hook (https://www.nektra.com/products/deviare-api-hook-windows/ (https://www.nektra.com/products/deviare-api-hook-windows/)):
Otro ejemplo algo más corto:
Que tan rápido seria si uso esta class tuya? Bueno, primero que nada y para evitar posibles confusiones, imagino que ya te habrás dado cuenta de que ese código es para obtener los procesos hijo, no el proceso padre, y como puedes comprobar por ti mismo ese algoritmo está basado en el uso de WMI, así que será tan rápido como lo que tarde la infraestructura WMI en devolver la respuesta a la petición o query enviada. Al utilizar querys complejas, WMI puede llegar a demorarse 1 segundo o más en devolver la respuesta, pero en términos generales WMI siempre resultará una solución efectiva, aunque debido a la naturaleza de su intervalo resultará más lento que llamar directamente a las funciones de la API de Windows que puedan reproducir lo mismo que pretendas realizar con WMI. Mi consejo: a menos que pretendas desarrollar un administrador de tareas o aplicación similar donde el rendimiento/tasa de actualización sea una prioridad máxima, entonces usa WMI y no le des más vueltas, es facil y efectivo. Saludos. Título: Re: Detectar Proceso Padre (VB.net) Publicado por: **Aincrad** en 17 Marzo 2019, 19:24 pm Gracias, Funciona perfecto. gracias. Ahora me pondre con lo de Interceptar llamadas.
Código
Sabes alguna Forma de Hacer un Blucle Asyncoronico, que siempre se mantenga activo aunque oculte el Form (me.hide) ? Actualmente estoy usando un BackgroundWorker Con un Bucle. pero no se si hay alguna otra manera de hacerlo. Esto es lo que estoy usando actualmente : Código
Título: Re: Detectar Proceso Padre (VB.net) Publicado por: Eleкtro en 17 Marzo 2019, 20:42 pm Puedes usar la clase Task, por ejemplo...
Código
Saludos. Título: Re: Detectar Proceso Padre (VB.net) Publicado por: **Aincrad** en 17 Marzo 2019, 20:56 pm Funciona Perfecto. ;-) ;-) .
Muchísimas gracias. |