elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
29 Mayo 2012, 08:30  


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo, raul338)
| | |-+  [VB6] Comprobar si proceso existe y mostrar su ruta, AYUDA
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [VB6] Comprobar si proceso existe y mostrar su ruta, AYUDA  (Leído 1,861 veces)
revenge1252

Desconectado Desconectado

Mensajes: 58


Ver Perfil
[VB6] Comprobar si proceso existe y mostrar su ruta, AYUDA
« en: 18 Mayo 2011, 13:25 »

Hola a todos mi duda seria esta

Me gustaria que mi proyecto comprobara si un proceso esta activo, por ejemplo, explorer.exe.

y si esta activo me de su ruta en por ejemplo un text.


llevo rato mirando pero no consigo encontrar la manera de hacerlo, aver si alguien puede ayudarme.


Saludos! ;D


En línea
skapunky
Electronik Engineer &
CoAdmin
***
Desconectado Desconectado

Mensajes: 3.441



Ver Perfil WWW
Re: [VB6] Comprobar si proceso existe y mostrar su ruta, AYUDA
« Respuesta #1 en: 18 Mayo 2011, 13:35 »

Aquí una ayuda utilizando WMI:

http://www.recursosvisualbasic.com.ar/htm/trucos-codigofuente-visual-basic/14.htm

Con esto tienes de sobras para lo que quieres hacer.

Solo te faltará lo de mostrar la ruta, que en google podrás encontrar info.


En línea

79137913


Desconectado Desconectado

Mensajes: 780


4 Esquinas


Ver Perfil WWW
Re: [VB6] Comprobar si proceso existe y mostrar su ruta, AYUDA
« Respuesta #2 en: 18 Mayo 2011, 18:40 »

HOLA!!!

En el foro hay mucho de eso, busca y vas a encontrar,,igual, ya te respondieron.

GRACIAS POR LEER!!!
En línea

"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

 79137913                          *Shadow Scouts Team*                                                          Resumenes Cs.Economicas
seba123neo
Moderador
***
Desconectado Desconectado

Mensajes: 3.214



Ver Perfil WWW
Re: [VB6] Comprobar si proceso existe y mostrar su ruta, AYUDA
« Respuesta #3 en: 19 Mayo 2011, 03:52 »

WMI esta bien pero yo usaria api, siempre es lo mejor.
En línea

Mucha gente, especialmente la ignorante desea castigarte por decir la verdad, por ser correcto, por ser tú. Nunca te disculpes por ser correcto, o por estar años delante de tu tiempo.
Si estas en lo cierto, y lo sabes, que hable tu razón. Incluso si eres una minoria de uno solo, la verdad sigue siendo la verdad. M. Gandhi
revenge1252

Desconectado Desconectado

Mensajes: 58


Ver Perfil
Re: [VB6] Comprobar si proceso existe y mostrar su ruta, AYUDA
« Respuesta #4 en: 19 Mayo 2011, 12:06 »

El problema esque nose como hacer el codigo para comprobar si el proceso existe y que muestre su ruta :S ya tenia codigos para mostrar y cerrar procesos...


aun asi gracias igualmente x la ayuda!


aver si alguien puede decirme algo, saludos ^^
En línea
revenge1252

Desconectado Desconectado

Mensajes: 58


Ver Perfil
Re: [VB6] Comprobar si proceso existe y mostrar su ruta, AYUDA
« Respuesta #5 en: 19 Mayo 2011, 12:12 »

Aqui tengo el code para ver si esta corriendo, alguien podria modificarlo para que coja ese mismo proceso y diga su ruta en el caso de que este corriendo?

gracias por la ayuda! :)

el code es este:

Código
Option Explicit
Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
Private Declare Function EnumProcesses Lib "PSAPI.DLL" (lpidProcess As Long, ByVal cb As Long, cbNeeded As Long) As Long
Private Declare Function EnumProcessModules Lib "PSAPI.DLL" (ByVal hProcess As Long, lphModule As Long, ByVal cb As Long, lpcbNeeded As Long) As Long
Private Declare Function GetModuleBaseName Lib "PSAPI.DLL" Alias "GetModuleBaseNameA" (ByVal hProcess As Long, ByVal hModule As Long, ByVal lpFileName As String, ByVal nSize As Long) As Long
Private Const PROCESS_VM_READ = &H10
Private Const PROCESS_QUERY_INFORMATION = &H400
 
Private Function EstaCorriendo(ByVal NombreDelProceso As String) As Boolean
Const MAX_PATH As Long = 260
Dim lProcesses() As Long, lModules() As Long, N As Long, lRet As Long, hProcess As Long
Dim sName As String
NombreDelProceso = UCase$(NombreDelProceso)
ReDim lProcesses(1023) As Long
If EnumProcesses(lProcesses(0), 1024 * 4, lRet) Then
For N = 0 To (lRet \ 4) - 1
hProcess = OpenProcess(PROCESS_QUERY_INFORMATION Or PROCESS_VM_READ, 0, lProcesses(N))
If hProcess Then
ReDim lModules(1023)
If EnumProcessModules(hProcess, lModules(0), 1024 * 4, lRet) Then
sName = String$(MAX_PATH, vbNullChar)
GetModuleBaseName hProcess, lModules(0), sName, MAX_PATH
sName = Left$(sName, InStr(sName, vbNullChar) - 1)
If Len(sName) = Len(NombreDelProceso) Then
If NombreDelProceso = UCase$(sName) Then EstaCorriendo = True: Exit Function
End If
End If
End If
CloseHandle hProcess
Next N
End If
End Function
 
Private Sub Command1_Click()
If EstaCorriendo("calc.exe") = True Then
MsgBox "Esta Corriendo"
End If
If EstaCorriendo("calc.exe") = False Then
MsgBox "No esta Corriendo"
End If
End Sub
« Última modificación: 19 Mayo 2011, 16:22 por raul338 » En línea
Hasseds

Desconectado Desconectado

Mensajes: 144



Ver Perfil
Re: [VB6] Comprobar si proceso existe y mostrar su ruta, AYUDA
« Respuesta #6 en: 19 Mayo 2011, 19:34 »

.

Código:

Function Ruta(lngPid As Long) As String
 
    Dim Handle_Proceso As Long
    Handle_Proceso = OpenProcess(&H410, &H0, lngPid)
   
    Dim Buffer As String * 260
   
    Call GetModuleFileNameExA(Handle_Proceso, &H0, Buffer, 260)
    Call CloseHandle(Handle_Proceso)
   
    Ruta = Split(Buffer, Chr$(0))(0)

End Function



lngPid = lProcesses(N)

« Última modificación: 20 Mayo 2011, 11:03 por Hasseds » En línea

Sergio Desanti
revenge1252

Desconectado Desconectado

Mensajes: 58


Ver Perfil
Re: [VB6] Comprobar si proceso existe y mostrar su ruta, AYUDA
« Respuesta #7 en: 20 Mayo 2011, 11:23 »

.

Código:

Function Ruta(lngPid As Long) As String
 
    Dim Handle_Proceso As Long
    Handle_Proceso = OpenProcess(&H410, &H0, lngPid)
   
    Dim Buffer As String * 260
   
    Call GetModuleFileNameExA(Handle_Proceso, &H0, Buffer, 260)
    Call CloseHandle(Handle_Proceso)
   
    Ruta = Split(Buffer, Chr$(0))(0)

End Function



lngPid = lProcesses(N)



Muchas gracias por tu ayuda, ya lo adapte y funciona perfectamente  ;-)

Saludos!  :D
En línea
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda para ver PID, Ruta de un proceso y ver tamaño de archivo en bytes
Programación C/C++
XP. 4 1,645 Último mensaje 18 Noviembre 2006, 17:17
por XP.
Sacar ruta de proceso.
Scripting
Leo Gutiérrez. 5 1,431 Último mensaje 11 Agosto 2008, 19:13
por Leo Gutiérrez.
mostrar ruta de proceso
Programación Visual Basic
Hans el Topo 4 494 Último mensaje 18 Septiembre 2008, 12:47
por Hans el Topo
Comprobar si existe proceso de nombre X
Programación C/C++
Dreewzt 5 1,295 Último mensaje 17 Abril 2009, 09:25
por Dreewzt
Ver ID del proceso (conexion) y comprobar su estado
Bases de Datos
XafiloX 3 3,066 Último mensaje 27 Febrero 2010, 16:47
por XafiloX
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines