Oppure

Loading
11/07/11 18:10
jaco94++
Salve a tutti!

Ho un problema con un programma che sto creando , questo programma data una lista fornita dall'utente (una specie di blacklist) ogni volta che si apre un programma presente nella lista deve killarlo il problema è solo 1:

io avevo pensato a fare un ciclo infinito che duri tutta la durata del mio programma e controllare ad ogni ciclo tutti i programmi aperti per verificare se sono presenti nella lista solo che secondo me potrebbe rallentare molto il computer :-| , cosi volevo sapere se esiste un evento che si verifica tutte le volte che un programma parte nel computer in questo modo controllo il nome dell'applicazione con quella della blacklist e la chiudo senza lasciare un ciclo infinito ! :D
aaa
11/07/11 18:18
Non è affatto semplice, ma questo

nektra.com/products/deviare-api-hook-windows/

mi sembra ottimo ...
11/07/11 19:45
lorenzo
secondo me basterebbe fare così:

con un timer ogni secondo esegui il comando dos tasklist redirigendo l'output dove preferisci. Esamini la lista sotto forma di stringa e vedi se il processo è nella tua blacklist.

Non dovrebbe appesantire troppo il sistema e mi pare che un controllo ogni secondo basti ed avanzi no? Puoi anche aumentare il tempo di attesa tanto non cambia molto...
aaa
12/07/11 16:58
kopiro91
usa la classe System.Diagnostics.Process, e se non sabaglio ci dovrebbe essere la funzione GetProcesses():
aaa
12/07/11 17:41
BionicGod
Crei un thread che ogni x millisecondi termina il processo se in esecuzione.
System.Threading.Thread <--- Questa classe devi studiare
aaa