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

0

¿Hay alguna forma de monitorear el rendimiento, WMI u otras herramientas disponibles para detectar cuándo se inicia un proceso específico o, mejor aún, cuándo está por comenzar? Luego, para 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 ha iniciado en algún momento y ya se está ejecutando no tiene ningún valor para mi requisito. 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 para VS, yb) qué parámetros VS pasa a Chrome para configurarlo para depuración integrada.

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

ProfK
fuente

Respuestas:

5

Es muy probable que desee ver el proceso que COMIENZA el proceso, y no solo el proceso de destino en sí.

Process Monitor de SysInternals debería poder capturar esto.

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

Otra opción, también de SysInternals, sería Process Explorer , básicamente el 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.

music2myear
fuente
Ah, gracias, he estado usando PE casualmente en lugar del Administrador de tareas durante años, y nunca supe ni me di cuenta de que me puede mostrar argumentos pasados.
ProfK
Al pasar el mouse sobre un proceso, se muestra la ruta completa del argumento. Es bastante útil.
music2myear