elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  saber si esta ejecutado
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: saber si esta ejecutado  (Leído 2,109 veces)
xXnewbieXx

Desconectado Desconectado

Mensajes: 68



Ver Perfil
saber si esta ejecutado
« en: 24 Febrero 2006, 16:18 pm »

hola, soy nuevo en el foro y tp llevo muxo tiempo programando, tengo una pekeña duda y staria agradecido si alguien m la resolviera.
Intento q mi exe pueda saber si otro exe se está ejecutando, q esté abierto. :-\. yo intenté hacerlo d esta forma:

Dim Comprobar_Uso As Integer
    Comprobar_Uso = App.PrevInstance
        If Comprobar_Uso <> 0 Then...       :-X

pero va ser q eso solo m sirve para mi propio programa.
hay alguna forma d poner un directorio y q compruebe si el programa d ahi esta abierto??? :huh:


En línea

Hardware: Lo que golpeas. Software: La causa

Error 943 - El sistema esta funcionando demasiado bien, se caerá para seguir con la rutina...
Kizar


Desconectado Desconectado

Mensajes: 1.325


kizar_net


Ver Perfil
Re: saber si esta ejecutado
« Respuesta #1 en: 24 Febrero 2006, 16:27 pm »

Lo k tienes k comprobar es k procesos hay en el administrador de tareas.

Busca en el foro, se ablo mucho de ese tema.

Salu2


En línea

APOKLIPTICO


Desconectado Desconectado

Mensajes: 3.871


Toys in the attic.


Ver Perfil
Re: saber si esta ejecutado
« Respuesta #2 en: 25 Febrero 2006, 18:01 pm »

Si vos lo abris con tu propio programa eso es posible:

Código:
Private Declare Function OpenProcess Lib "kernel32" Alias "OpenProcess" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long

Private Declare Function GetExitCodeProcess Lib "kernel32" Alias "GetExitCodeProcess" (ByVal hProcess As Long, lpExitCode As Long) As Long

Private Const STILL_ACTIVE = &H103
Private Const PROCESS_QUERY_INFORMATION = &H400

Sub Ejecutar(Aplicacion As String)
Dim hProceso As long
Dim Activa As Long

hProceso = OpenProcess(PROCESS_QUERY_INFORMATION, 0, Shell(Aplicacion, 1))

Do
 ret = GetExitCodeProcess(hProceso, Activa)
DoEvents
Loop While Activa = STILL_ACTIVE

'Una vez que se termino la ejecucion...

End sub

Fuente: Microsoft Visual Basic 6.0 Manual de referencia. USERS

Si tenes la handle del proceso tambien podes usar el GetExitCodeProcess.

Suert y espero q t sirva.
En línea

AMD Phenom II 1075T X6 @ 290 Mhz x 11 (HT 2036 Mhz NB Link 2616 Mhz) 1.23 Vcore
ASUS M4A89GTD-PRO/USB3
2x2gb G-Skill RipjawsX DDR3 1600 Mhz CL7 (7-8-7-24-25-1T)
Seagate 500 Gb
XFX HD4850 512Mb GDDR3. 650 Mhz/995 Mhz 1.1 Tflops.
xXnewbieXx

Desconectado Desconectado

Mensajes: 68



Ver Perfil
Re: saber si esta ejecutado
« Respuesta #3 en: 25 Febrero 2006, 21:32 pm »

muxas gracias APOKLIPTICO, al final m kede con sólo con la línea:

hProceso = OpenProcess(PROCESS_QUERY_INFORMATION, 0, Shell(Aplicacion, 1))

pq desde k el valor fuera 0 ya sabia k no estaba en ejecutado o q el directorio q intentaba abir no existia.
vamos k mate a 2 pajaros d un tiro para lo q queria hacer, d nuevo gracias!! ;D
En línea

Hardware: Lo que golpeas. Software: La causa

Error 943 - El sistema esta funcionando demasiado bien, se caerá para seguir con la rutina...
xXnewbieXx

Desconectado Desconectado

Mensajes: 68



Ver Perfil
Re: saber si esta ejecutado
« Respuesta #4 en: 25 Febrero 2006, 22:16 pm »

 ;D ;D ;D ;D en mi anterior mensaje t di las gracias, pero m kede corto...era justo la pieza clave para terminar d crear un proceso q no pudiera ser cerrado...llevaba 1 semana ataskado para encontrar la manera d hacerlo funcionar...lo uniko una cosilla a ver si alguien sabe alguna forma para evitar la siguiente parida... :o
Puse en un timer la comprobacion, si lo pongo el intervalo aprox un seg (1000) no hay problemas, pero 1 mano agil m puede cerrar el proceso. si pongo menos d 1000 el ordena c coge la trabadera y no para d salir parpadeando el reloj  :-[
saludos.
En línea

Hardware: Lo que golpeas. Software: La causa

Error 943 - El sistema esta funcionando demasiado bien, se caerá para seguir con la rutina...
APOKLIPTICO


Desconectado Desconectado

Mensajes: 3.871


Toys in the attic.


Ver Perfil
Re: saber si esta ejecutado
« Respuesta #5 en: 26 Febrero 2006, 02:40 am »

usa otro proceso para monitorear al general e incluso 2 procesos.
En línea

AMD Phenom II 1075T X6 @ 290 Mhz x 11 (HT 2036 Mhz NB Link 2616 Mhz) 1.23 Vcore
ASUS M4A89GTD-PRO/USB3
2x2gb G-Skill RipjawsX DDR3 1600 Mhz CL7 (7-8-7-24-25-1T)
Seagate 500 Gb
XFX HD4850 512Mb GDDR3. 650 Mhz/995 Mhz 1.1 Tflops.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Archivo.com ejecutado accidentalmente
Seguridad
Xedrox 9 7,458 Último mensaje 24 Noviembre 2010, 01:22 am
por Mr.Blue
Porque el ciclo no se sigue ejecutado?
Programación C/C++
StrikeOne 2 2,024 Último mensaje 25 Febrero 2012, 23:12 pm
por StrikeOne
Saber si mi vpn esta cifrando con Wireshark
Redes
franciscana 9 7,011 Último mensaje 19 Noviembre 2020, 16:32 pm
por franciscana
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines