elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Ingresar Registrarse
06 Septiembre 2008, 01:15  



+  Foro de elhacker.net
|-+  Programación
| |-+  Programación VB (Moderadores: ||MadAntrax||, E0N)
| | |-+  Detectar la ejecución de una aplicación
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Imprimir
Autor Tema: Detectar la ejecución de una aplicación  (Leído 299 veces)
naderST

Desconectado Desconectado

Mensajes: 237



Ver Perfil
Detectar la ejecución de una aplicación
« en: 22 Junio 2008, 19:04 »

Buenas quería saber como podría hacer esto?
En línea
skullsp

Desconectado Desconectado

Mensajes: 243


UpLoadSourceCode


Ver Perfil WWW
Re: Detectar la ejecución de una aplicación
« Respuesta #1 en: 22 Junio 2008, 19:48 »

lista los procesos y agregale un IF, si el nombre del exe es igual al que estas buscando, que salte el error o lo que sea
En línea



naderST

Desconectado Desconectado

Mensajes: 237



Ver Perfil
Re: Detectar la ejecución de una aplicación
« Respuesta #2 en: 22 Junio 2008, 19:56 »

lista los procesos y agregale un IF, si el nombre del exe es igual al que estas buscando, que salte el error o lo que sea

mmm pero quiero que detecte cualquier exe que se ejecute, no solo uno en específico.
En línea
skullsp

Desconectado Desconectado

Mensajes: 243


UpLoadSourceCode


Ver Perfil WWW
Re: Detectar la ejecución de una aplicación
« Respuesta #3 en: 22 Junio 2008, 20:03 »

bue, es lo mismo pero agarra los ultimas 3 letras del programa y te va a decir si es un exe o una dll
En línea



francella

Desconectado Desconectado

Mensajes: 28



Ver Perfil
Re: Detectar la ejecución de una aplicación
« Respuesta #4 en: 02 Julio 2008, 15:34 »

mmm... puedes volcar todos los procesos a un list o a cualkier lado y comparar a cada rato con la del instante y si aparece uno nuevo podes capturar el nombre...
no parece ser dificil..

sientate un rato y fijate como lo puedes hacer xD

Saludos
En línea

Leyendo se aprende
Hendriҳ
Colaborador

Desconectado Desconectado

Mensajes: 2.005


The Lord of his Middle Earth


Ver Perfil WWW
Re: Detectar la ejecución de una aplicación
« Respuesta #5 en: 02 Julio 2008, 15:53 »

Interceptar ejecutables

Es algo viejo este articulo, pero te podria servir.

Un Saludo  :)

En línea

Muchas veces las cosas no se le dan al que las merece más, sino al que sabe pedirlas con insistencia. - Arthur Schopenhauer

seba123neo

Desconectado Desconectado

Mensajes: 664



Ver Perfil WWW
Re: Detectar la ejecución de una aplicación
« Respuesta #6 en: 02 Julio 2008, 16:42 »

tambien podes hacer algo asi:

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()
MsgBox EstaCorriendo("calc.exe")
End Sub

esto es cualquiera es para uno solo.. :P

saludos.
« Última modificación: 02 Julio 2008, 17:08 por seba123neo » En línea

Todos somos ignorantes;lo que pasa es que no todos ignoramos las mismas cosas - Albert Einstein
naderST

Desconectado Desconectado

Mensajes: 237



Ver Perfil
Re: Detectar la ejecución de una aplicación
« Respuesta #7 en: 02 Julio 2008, 19:39 »

Gracias a todos por sus respuesta, pero me voy con la respuesta de Hendriҳ
En línea
Páginas: [1] Ir Arriba Imprimir 
Ir a:  







Consolas     La Web de Goku     MilW0rm     MundoDivx

Hispabyte     Truzone     TodoReviews     ZonaPhotoshop

hard-h2o modding    Foros de ayuda    Yashira.org    Videojuegos    indetectables.net   

Noticias Informatica    Seguridad Informática    ADSL    Foros en español    eNYe Sec

Todas las webs afiliadas están libres de publicidad engañosa.

Powered by SMF 1.1.5 | SMF © 2006-2008, Simple Machines LLC