Hola...
Lo tuyo es:
System.EnumerateProcesses();
Lo que hace esta funcion propia del ams es devolverte en "Tabla" la ruta del proceso y el PID del mismo, es bastante util para identificar los procesos que desees, si ejecutas como administrador tu aplicacion veras mas procesos de lo que normalmente pudieras ver, aqui abajo te dejo la manera en la cual lo puedes emplear, para visualizarlo puedes utilizar un ListBox o semejante.
Directamente de la ayuda del programa:Lo tuyo es:
System.EnumerateProcesses();
Lo que hace esta funcion propia del ams es devolverte en "Tabla" la ruta del proceso y el PID del mismo, es bastante util para identificar los procesos que desees, si ejecutas como administrador tu aplicacion veras mas procesos de lo que normalmente pudieras ver, aqui abajo te dejo la manera en la cual lo puedes emplear, para visualizarlo puedes utilizar un ListBox o semejante.
instances_of_file = 0;--Aun no comprendo el porque de esta estupida variable pero asi esta asentada en la ayuda, puedes eliminarla sin problemas.
file_to_check_for = "autorun.exe"; --El nombre de la aplicacion que quieres identificar en MINUSCULAS
processes = System.EnumerateProcesses();--Aqui te devuelve una tabla con todos los procesos activos en tu Sistema
for j, file_path in pairs(processes) do--Se crea un loop para obtener todos los procesos de manera logica...
--Donde la variable j contendra el PID del proceso, file_path contendra la ruta logica hacia el proceso (HDD), processes es la tabla a la cual o con la cual estas trabajando.
file = String.SplitPath(file_path);--Se hace un split (division, particion) entre los resultados, estos resultados son alojados en la variable file_path y como te dije contienen la ruta completa hacia el ejecutable dentro del equipo, asi solo se obtendra el nombre del proceso y la extension del mismo mas adelante.
if (String.Lower(file.Filename..file.Extension)) == file_to_check_for then--Aqui se hace una nueva sentencia que como condicion se le dice que "si en minusculas el nombre del proceso.exe es igual al que tu le estas pidiendo que busque hara algo...
System.TerminateProcess(j);--Con esto (lo que haces) terminas el proceso pero...
--Aqui puedes hacer lo que pretendes
end
end
Saludos.