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

 

 


Tema destacado: Curso de javascript por TickTack


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  Error en codigo de API guide
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Error en codigo de API guide  (Leído 2,597 veces)
x64core


Desconectado Desconectado

Mensajes: 1.908


Ver Perfil
Error en codigo de API guide
« en: 5 Agosto 2011, 05:23 am »

hola buenas pues si mi vb se cuelga en un codigo de API guide que es el ejemplo de loadlibrary:

Código
  1. Private Declare Function FreeLibrary Lib "kernel32" (ByVal hLibModule As Long) As Long
  2. Private Declare Function LoadLibrary Lib "kernel32" Alias "LoadLibraryA" (ByVal lpLibFileName As String) As Long
  3. Private Declare Function GetProcAddress Lib "kernel32" (ByVal hModule As Long, ByVal lpProcName As String) As Long
  4. Private Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hWnd As Long, ByVal Msg As Any, ByVal wParam As Any, ByVal lParam As Any) As Long
  5. Private Sub Form_Load()
  6.    On Error Resume Next
  7.    'KPD-Team 1999
  8.    'URL: http://www.allapi.net/
  9.    'E-Mail: KPDTeam@Allapi.net
  10.    'We're going to call an API-function, without declaring it!
  11.    Dim lb As Long, pa As Long
  12.    'map 'user32' into the address space of the calling process.
  13.    lb = LoadLibrary("user32")
  14.    'retrieve the address of 'SetWindowTextA'
  15.    pa = GetProcAddress(lb, "SetWindowTextA")
  16.    'Call the SetWindowTextA-function
  17.    CallWindowProc pa, Me.hWnd, "Hello !", ByVal 0&, ByVal 0&
  18.    'unmap the library's address
  19.    FreeLibrary lb
  20. End Sub


se cuelga cuando llega a esta linea:

Código
  1. CallWindowProc pa, Me.hWnd, "Hello !", ByVal 0&, ByVal 0&

alguien sabe porq? y como arreglarlo? :P


En línea

AlxSpy

Desconectado Desconectado

Mensajes: 137


Ver Perfil
Re: Error en codigo de API guide
« Respuesta #1 en: 6 Agosto 2011, 17:39 pm »

quizas porque a la funcion SetWindowTextA se le esta pasando 4 parametros (Me.hWnd, "Hello !", ByVal 0&, ByVal 0&)  en lugar de 2 (HWND + titulo), cambie el codigo, en vez de llamar a SetWindowTextA llama a MessageBoxA y funciona (este si tiene 4 parametros):

Código
  1. Private Declare Function FreeLibrary Lib "kernel32" (ByVal hLibModule As Long) As Long
  2. Private Declare Function LoadLibrary Lib "kernel32" Alias "LoadLibraryA" (ByVal lpLibFileName As String) As Long
  3. Private Declare Function GetProcAddress Lib "kernel32" (ByVal hModule As Long, ByVal lpProcName As String) As Long
  4. Private Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hWnd As Long, ByVal Msg As Any, ByVal wParam As Any, ByVal lParam As Any) As Long
  5. Private Sub Form_Load()
  6.    On Error Resume Next
  7.    Dim Icono As Long
  8.    Icono = 48
  9.    'KPD-Team 1999
  10.    'URL: http://www.allapi.net/
  11.    'E-Mail: KPDTeam@Allapi.net
  12.    'We're going to call an API-function, without declaring it!
  13.    Dim lb As Long, pa As Long
  14.    'map 'user32' into the address space of the calling process.
  15.    lb = LoadLibrary("user32")
  16.    'retrieve the address of 'SetWindowTextA'
  17.    pa = GetProcAddress(lb, "MessageBoxA")
  18.    'Call the SetWindowTextA-function
  19.    CallWindowProc pa, Me.hWnd, "Hello !", "titulo", Icono
  20.    'unmap the library's address
  21.    FreeLibrary lb
  22. End Sub
  23.  
  24.  


En línea

x64core


Desconectado Desconectado

Mensajes: 1.908


Ver Perfil
Re: Error en codigo de API guide
« Respuesta #2 en: 6 Agosto 2011, 20:18 pm »

gracias!  :D es cierto lo que dices ahora sol hay que saber como usar cualquier api con cualquier numero de parametros con este metodo  :P
En línea

BlackZeroX
Wiki

Desconectado Desconectado

Mensajes: 3.158


I'Love...!¡.


Ver Perfil WWW
Re: Error en codigo de API guide
« Respuesta #3 en: 7 Agosto 2011, 01:42 am »

@Raul100

Nesesitas ejecutar ASM Inline... para insertar los punteros de las variables...

http://foro.elhacker.net/programacion_visual_basic/asm_en_vb6_respuesta_a_myserik-t330062.0.html

NOTA: APICallByName.

Dulces Lunas!¡.
« Última modificación: 7 Agosto 2011, 01:43 am por BlackZeroX▓▓▒▒░░ » En línea

The Dark Shadow is my passion.
AlxSpy

Desconectado Desconectado

Mensajes: 137


Ver Perfil
Re: Error en codigo de API guide
« Respuesta #4 en: 7 Agosto 2011, 04:15 am »

aki en el foro tambien karcrack hizo algo parecido a lo de blackzero, el titulo del post era "llamar apis sin declararlos", tambien puede servirte.
En línea

x64core


Desconectado Desconectado

Mensajes: 1.908


Ver Perfil
Re: Error en codigo de API guide
« Respuesta #5 en: 7 Agosto 2011, 20:30 pm »

sisisis lo ce aqui hay varias modulos de apicallbyname yo queria saber porq salia error en ese codigo ;D
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
API - GUIDE
Programación Visual Basic
Sancho.Mazorka 3 1,843 Último mensaje 1 Diciembre 2005, 23:10 pm
por Sancho.Mazorka
Api Guide Encrypt/Decrypt problemas!!
Programación Visual Basic
Hole_System 4 4,006 Último mensaje 27 Diciembre 2008, 01:38 am
por Hole_System
Error en Nautilus-data. Codigo de salida error 1.
GNU/Linux
lilo. 2 5,159 Último mensaje 29 Enero 2011, 03:49 am
por RyogiShiki
API GUIDE con virus!?
Foro Libre
x64core 0 1,523 Último mensaje 5 Octubre 2011, 21:25 pm
por x64core
Busco Vendor GUIDE
Foro Libre
TickTack 1 2,712 Último mensaje 26 Mayo 2021, 14:12 pm
por el-brujo
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines