скажи лучше что ему не нравится в стеке)
Добавлено через 2 минуты
вот пакет на открытие инвентаря, ему нужно то тока передать строку размера, ид пакета да поинтер на че-та
asm
push c
push np.size
push np.unknown
jmp [SendPacketOld]
end;
и ничерта(
Добавлено через 11 минут
че-то мне кажется я прыгаю не туда)
Добавлено через 11 минут
помогите(
Добавлено через 17 минут
ПОМОГИТЕ
Добавлено через 47 минут
delphi Код:
TSendPacket = packed record
unknown:pointer;
size:pchar;
id:byte;
end;
procedure SendPacketHook2(np:TSendPacket;data:array of pointer); stdcall;
var
i:integer;
c:cardinal;
begin
c:=np.id;
if length(data)>1 then
for i:=length(data)-1 downto 1 do
asm
push data[i]
end;
asm
push c
push np.size
push np.unknown
jmp [SendPacketOld]
end;
end;
procedure SendPacketHook(np:TSendPacket); stdcall;
var
p:pointer;
data:array of pointer;
i:integer;
s:string;
c:cardinal;
spobj:Pointer;
begin
try
c:=np.id;
SetLength(data,length(np.size));
p:=@np;
p:=Pointer(Cardinal(p)+$0C);
s:='';
data[0]:=@np.id;
if length(np.size)>1 then
for i:=1 to length(np.size)-1 do
begin
data[i]:=p;
s:=s+inttostr(integer(p^))+'; ';
p:=pointer(Cardinal(p)+4);
end;
messagebox(0,PChar(inttohex(np.id,2)+'; '+np.size+'; '+s),'FromClient',0);
except
messagebox(0,PChar('error'),'FromClient',0);
end;
SendPacketHook2(np,data);
end;
попалите что не так тут(