Domingo 22 de Diciembre de 2024, 14:45
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
Programación General
»
Visual Basic 6.0 e inferiores
(Moderador:
F_Tanori
) »
Ejecucion De Un *.exe
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: Ejecucion De Un *.exe (Leído 2807 veces)
juravi
Miembro activo
Mensajes: 94
Ejecucion De Un *.exe
«
en:
Jueves 17 de Febrero de 2005, 22:35 »
0
Hola a tod@s.
Alguno sabe o tiene una rutina que detecte si un ejecutable esta en funcionamiento.
Saludos.
Tweet
El Fin justifica los Medios
_______________________
ﻞυגανι.Corp [The Designer]
<a href=\'mailto]No sé el secreto para llegar al éxito, pero sé que tratar de agradar a todos es lo que te llevará al fracaso... Piénsalo!!![/color]
RadicalEd
Moderador
Mensajes: 2430
Nacionalidad:
Re: Ejecucion De Un *.exe
«
Respuesta #1 en:
Jueves 17 de Febrero de 2005, 22:40 »
0
Hola juravi, busca en el foro por lista de procesos, creo que hay unos posts acerca de eso, tengo unas rutinas por ahi, pero las tengo en la casa, dame tiempo y las busco.
Ok Chao.
El pasado son solo recuerdos, el futuro son solo sueños
Brroz
Miembro de PLATA
Mensajes: 1058
Re: Ejecucion De Un *.exe
«
Respuesta #2 en:
Viernes 18 de Febrero de 2005, 10:29 »
0
Hola.
Seguramente esto te sirva:
En una dimensión devuelve el pId y en otra el ejecutable.
Código: Text
Option Explicit
Private Type PROCESSENTRY32
dwSize As Long
cntUsage As Long
th32ProcessID As Long
th32DefaultHeapID As Long
th32ModuleID As Long
cntThreads As Long
th32ParentProcessID As Long
pcPriClassBase As Long
dwFlags As Long
szExeFile As String * 260
End Type
Private Declare Function CreateToolhelpSnapshot Lib "kernel32" Alias "CreateToolhelp32Snapshot" (ByVal lFlags As Long, ByVal lProcessID As Long) As Long
Private Declare Function ProcessFirst Lib "kernel32" Alias "Process32First" (ByVal hSnapShot As Long, uProcess As PROCESSENTRY32) As Long
Private Declare Function ProcessNext Lib "kernel32" Alias "Process32Next" (ByVal hSnapShot As Long, uProcess As PROCESSENTRY32) As Long
Private Declare Sub CloseHandle Lib "kernel32" (ByVal hPass As Long)
Public Sub GetProcesos(ByRef Tareas() As String)
Dim lSnapShot As Long
lSnapShot = CreateToolhelpSnapshot(2&, 0&)
If lSnapShot <> 0 Then
Dim Proceso As PROCESSENTRY32
Proceso.dwSize = Len(Proceso)
Dim lRc As Long, lCta As Long
lRc = ProcessFirst(lSnapShot, Proceso)
Do While lRc
lCta = lCta + 1
If lCta > 1 Then
ReDim Preserve Tareas(2, lCta)
Else
ReDim Tareas(2, 1)
End If
Tareas(0, lCta - 1) = Proceso.th32ProcessID
Tareas(1, lCta - 1) = Left(Proceso.szExeFile, InStr(Proceso.szExeFile, Chr(0)) - 1)
lRc = ProcessNext(lSnapShot, Proceso)
Loop
CloseHandle lSnapShot
End If
End Sub
Chau.
juravi
Miembro activo
Mensajes: 94
Re: Ejecucion De Un *.exe
«
Respuesta #3 en:
Viernes 18 de Febrero de 2005, 14:45 »
0
Hola a todos,
Brroz gracias por la rutina, pero me da pena desirlo.. no se usarla.. me puedes explicar donde usarla.. La puse en un formulario, luego en un modulo y nada.
RadicalEd si me puedes proporsionar tu rutina tambien te lo agradeceria..
Saludos.
El Fin justifica los Medios
_______________________
ﻞυגανι.Corp [The Designer]
<a href=\'mailto]No sé el secreto para llegar al éxito, pero sé que tratar de agradar a todos es lo que te llevará al fracaso... Piénsalo!!![/color]
RadicalEd
Moderador
Mensajes: 2430
Nacionalidad:
Re: Ejecucion De Un *.exe
«
Respuesta #4 en:
Viernes 18 de Febrero de 2005, 16:27 »
0
Mira este Zip, sirve para ver los procesos, es creado por guille.
Ojala te sirva.
Chao
El mensaje contiene
1 archivo adjunto
. Debes
ingresar
o
registrarte
para poder verlo y descargarlo.
El pasado son solo recuerdos, el futuro son solo sueños
Cyclop
Miembro MUY activo
Mensajes: 323
Re: Ejecucion De Un *.exe
«
Respuesta #5 en:
Viernes 18 de Febrero de 2005, 17:02 »
0
buscalo en
www.pscode.com
ahi hay buenos ejemplos.
Salu2
Cyclopz
Icotext Evolution v0.5 para los amantes del ASCII Art
http]
juravi
Miembro activo
Mensajes: 94
Re: Ejecucion De Un *.exe
«
Respuesta #6 en:
Viernes 18 de Febrero de 2005, 17:39 »
0
Hola a todos.
RadicalEd, gracias por el archivo.. esta bn pro. Voy a modificarlo para mi conveniencia.
Cyclop, gracias por la pagina.. manana sabado lo reviso en mi ksa con calma. ya que en la empresa me tienen un poco restringido.
Brroz, si tubieras tiempo y me pudieras explicar tu rutina se te agradeceria.
Saludos.
El Fin justifica los Medios
_______________________
ﻞυגανι.Corp [The Designer]
<a href=\'mailto]No sé el secreto para llegar al éxito, pero sé que tratar de agradar a todos es lo que te llevará al fracaso... Piénsalo!!![/color]
Brroz
Miembro de PLATA
Mensajes: 1058
Re: Ejecucion De Un *.exe
«
Respuesta #7 en:
Sábado 19 de Febrero de 2005, 08:35 »
0
Puedes usar el código en un módulo estándard, módulo de clase o formulario.
Llama al método GetProcesos pasándole como parámetro una matriz de tipo string que habrás declarado previamente. Cuando el método se haya ejecutado, tendrás en la matriz el id de proceso de cada tarea con su correspondiente ejecutable.
Código: Text
.
.
.
Dim sProc() As String
GetProcesos sProc
Dim iCta As Integer, iIdx As Integer
iCta = Ubound(sProc)
Form iIdx=0 To iCta - 1
MsgBox sProc(0, iIdx) & " - " & sProc(1, iIdx)
Next iIdx
.
.
.
Chao.
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
Programación General
»
Visual Basic 6.0 e inferiores
(Moderador:
F_Tanori
) »
Ejecucion De Un *.exe