Delphi - Direccion de funcion API

 
Vista:

Direccion de funcion API

Publicado por Mr. Sade (76 intervenciones) el 15/08/2005 03:55:22
alguien sabe un truco para obtener la verdadera direccion de una API?
@SendMessage no me da la verdadera direccion debido a que Delphi llama a las APIs mediante una tabla de saltos y cuando escribes @SendMessage da la direccion de la tabla. que apunta a otra variable que apunta a la direccion verdadera

se que puedo obtener la direccion verdadera llamando a getprocaddress() pero debe de haber una forma mas facil.
hasta ahora estoy usando esto:
mov eax, dword ptr SendMessage+2
mov eax, [eax]
mov lpSendMessge, eax

;- en delphi seria
lpSendMessge := Pointer(Pointer(Pointer( Integer(@SendMessage)+2 )^)^)

y el compilador de delphi genera esto, pero alguien conoce otra forma?
mov eax @SendMessage
add eax, 2
mov eax, [eax]
mov eax, [eax]
mov lpSendMessge, eax


Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder