¿Puedo detectar cuándo se inicia un proceso de Windows sin escribir código a nivel de sistema?

¿Puedo detectar cuándo se inicia un proceso de Windows sin escribir código a nivel de sistema?

¿Existe alguna forma, mediante monitoreo de rendimiento, WMI u otras herramientas disponibles gratuitamente, de detectar cuándo se inicia un proceso específico, o mejor aún, está por iniciarse? Luego, además, capturar los parámetros de la línea de comando pasados ​​a la función de punto de entrada para ese proceso.

Simplemente detectar que el proceso se inició en algún momento y ya se está ejecutando no tiene ningún valor para mis necesidades. Tengo Visual Studio iniciando Chrome para una sesión de depuración y me gustaría a) averiguar si VS usa cmd.exe para iniciar Chrome, o algún código interno de VS, y b) qué parámetros pasa VS a Chrome para configurarlo. para la depuración integrada.

¿O tal vez hay alguna forma de usar PowerShell para colocar algún tipo de vigilancia en la imagen del proceso, es decir, el archivo .exe, para ver cuándo se accede a él para su ejecución?

Respuesta1

Lo más probable es que desee observar el proceso que INICIA el proceso, y no solo el proceso objetivo en sí.

Monitor de procesode SysInternals debería poder capturar esto.

Filtre el proceso de Visual Studio (y posiblemente también CMD y Chrome), active la secuencia de depuración en VS y vea qué se captura.

Otra opción, también de SysInternals, seríaExplorador de procesos, básicamente Administrador de tareas con esteroides, que captura los argumentos que iniciaron cada proceso. Si VS inicia un intermediario que luego abre Chrome Y ese intermediario permanece ejecutándose como padre del proceso de Chrome, Process Explorer le mostrará los argumentos pasados.

información relacionada