Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Ayuda sobre crear puntero a memoria (https://www.clubdelphi.com/foros/showthread.php?t=41983)

Lambda 30-03-2007 18:03:46

Ayuda sobre crear puntero a memoria
 
wenas soy nuevo por estos lares, y conmigo traigo una pequeña pregunta

quiero hacer una DLL que al inyectarla a un proceso haga un puntero a una funcion que esta en una determinada adress, nunca he usado los punteros en delphi por lo que no tengo ni idea de como hacerlo.

Tengo un codigo en C++ de como seria la cosa, pero me interesa hacerlo en delphi

Dejo el codigo por si os puede ayudar

Código:

//The definition of the Gunz output chat function
typedef void (__cdecl* ZChatOutputFunc)(const char* lpcMsg, int iType /*= 0*/,int iLoc /*= 0*/,  DWORD dwColor);

//Making the pointer to that func in Gunz
ZChatOutputFunc ZChatOutput = (ZChatOutputFunc)0x00429e60;

Asi seria en C++ pero en delphi no tengo ni idea, ya que no se nada acerca de punteros:p

saludos y gracias por adelantado ^^

seoane 30-03-2007 18:20:30

Asi a primera vista, podriamos intentar algo como esto:
Código Delphi [-]
var
  ZChatOutput: procedure (lpcMsg: PChar; iType,iLoc: Integer; dwColor: DWORD); cdecl;
begin
  ZChatOutput:= Pointer($00429e60);
  // Ahora usamos ZChatOutput como cualquier otro procedure
  ZChatOutput( .....
end;


La franja horaria es GMT +2. Ahora son las 02:19:55.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi