Спасибо Вам еще раз за наводку с темкой.. Всё получилось! смог выывести в наружу
procedure Packet(Packet: string);
var
aParams: TParams;
PID, hProcess: DWord;
begin
aParams.BASE_ADD := Pointer(BASE_ADD);
aParams.Ofs :=Pointer(OffSets_Uchastvuelvotpravkepaketa);
GetWindowThreadProcessId(WID, @PID);
hProcess:=OpenProcess(PROCESS_ALL_ACCESS, False, PID);
StrToByte(Packet,aParams);
InjectFunc(hProcess,@PacketCall,@aParams,sizeof(aP arams));
CloseHandle(hProcess); //забыл дописать
end;
procedure PacketCall(aPParams:PParams); stdcall;
var
CallAddress,pPacket,_BASE_ADD_,_Ofs:Pointer;
Len
Word;
begin
CallAddress:=Pointer($6737B0); //адрес был устаревший
Len:=aPParams^.Param1;
_BASE_ADD_:=aPParams^.BASE_ADD;
_Ofs:=aPParams^.Ofs;
pPacket:=@aPParams^.Packet;
asm
pushad
mov ecx, _BASE_ADD_
mov ecx, dword ptr [ecx]
mov esi, _Ofs
mov ecx, dword ptr [ecx+esi] //20
push Len
push pPacket
call CallAddress
popad
end;
end;
и огромнее спасибо за предоставленные им исходников PWA, BAO без этих исходников и форума жуков я бы врядли смог бы хоть что написать!
там конечно у автора свой стиль программирования, но потихоньку начынаю понимать))) уже с легкостью чытаю среду delphi )) хотя недельки 2-3 назад я вообше не смыслел в этом)
Добавлено через 2 минуты
немножко доработав бота я тож выложу исходники своих программ)) может кому понадобятся)