| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
snupoo Lt Cmdr


Registrado: 19 Feb 2004Mensajes: 108Ubicación: Merida yucatan Mexico
|
Publicado: Jue 02 Oct, 2008 2:10 am Asunto: Detectar cuando se inicia un proceso |
|
|
Hola a todos.
Con ayuda del foro he logrado hacer un programa que me muestre todos los procesos activos en windows tipo taskmgr.exe el problema es que quiero que el programa detecte cuando se inicia un nuevo proceso para que se actualice la lista de manera automática y no tener el codigo en un ciclo infinito.
En concreto lo que quiero saber es si hay alguna API o mensaje de windows que me de esta información o como se podría hacer.
Saludos. _________________ [img]http://folding.extremeoverclocking.com/sigs/sigimage.php?un=snupoo&t=86565/sigimage.gif[/img]
A programar se aprende programando
Ultima edición por snupoo el Jue 02 Oct, 2008 4:15 pm, editado 1 vez |
|
| Volver arriba |
|
 |
ifrit Master


Registrado: 12 Jun 2007Mensajes: 509Ubicación: La Habana, Cuba
|
Publicado: Jue 02 Oct, 2008 2:45 am Asunto: |
|
|
snuppo no se como hicistes tu programa ni si este metodo es el mejor pero yo lo haria asi:
Supongamos que al precionar un bton se te llena un stringrid o memo con los procesos(esto lo haces atraves de un codigo), pues guardo esas lineas en un memo o el numero de procesos y con un timer hago un ciclo y si el nuemro que me da ahora el timer es mayor o menor mostrar mensaje _________________ Todos somos ignorantes, lo que no todos ignoramos lo mismo... |
|
| Volver arriba |
|
 |
escafandra Master

Registrado: 29 Nov 2007Mensajes: 625Ubicación: Madrid - España
|
Publicado: Jue 02 Oct, 2008 12:31 pm Asunto: |
|
|
Estoy de acuerdo.
Taskmgr.exe realiza un timer y actualiza los ListView periódicamente, analizando cada vez los procesos activos.
Otra forma, mucho más compleja, que se me ocurre es hacer un Hook a la API CreateProcess del Explorer.exe y así detectar que se crea un proceso.
Pienso que para tu caso, lo mejor es un Timer.
Saludos. |
|
| Volver arriba |
|
 |
snupoo Lt Cmdr


Registrado: 19 Feb 2004Mensajes: 108Ubicación: Merida yucatan Mexico
|
Publicado: Jue 02 Oct, 2008 4:15 pm Asunto: |
|
|
Gracias a los dos por la respuesta.
Precisamente el ciclo o timer es lo que quiero evitar ya que el programa ademas de estar mostrando los procesos activos va a llevar una estadística de estos, y va a estar activo indefinidamente.
Voy a tratar con CreateProcess para ver si logro lo que quiero.
Saludos. _________________ [img]http://folding.extremeoverclocking.com/sigs/sigimage.php?un=snupoo&t=86565/sigimage.gif[/img]
A programar se aprende programando |
|
| Volver arriba |
|
 |
|