un aporte 2
Publicado por ErGrone (3 intervenciones) el 13/05/2003 22:18:13
para obtener la ip de alguna url
Function GHBN(buf:pchar):Dword;
var
okey:dword;
begin
asm
push buf
call GetHostByName
cmp eax,0
je @@chiet
mov eax,dword ptr [eax+10h]
mov eax,dword ptr [eax]
@@chiet:
mov okey, eax
end;
result:=okey;
end;
llamada
-------------
ip := GHBN('www.mierdonalds.cl');
-----------------------------------------
Function CreaSocket(protoc,tcpudp,fam:integer):integer;
begin
asm
push protoc
push tcpudp
push fam
call socket
mov Descr,eax
end;
result:=descr;
end;
llamada jand:=CreaSocket(0,1,2);
---------------------------
Function ConectSocket(ipdest:dword;fami:U_short;sport:word;jande:dword):integer;
var
sockaddr:TSockAddrIn;
out:integer;
begin
asm
push sport
call htons
mov word ptr [sockaddr.sin_port],ax
mov ax, fami
mov word ptr [sockaddr.sin_family],ax
mov eax, ipdest
mov dword ptr [sockaddr.sin_addr], eax
mov edx, jande
lea eax, sockaddr
push 10h //Size
push eax
push edx
call connect
mov out, eax
end;
result:=out;
end;
llamada
asm
push destino %
Function GHBN(buf:pchar):Dword;
var
okey:dword;
begin
asm
push buf
call GetHostByName
cmp eax,0
je @@chiet
mov eax,dword ptr [eax+10h]
mov eax,dword ptr [eax]
@@chiet:
mov okey, eax
end;
result:=okey;
end;
llamada
-------------
ip := GHBN('www.mierdonalds.cl');
-----------------------------------------
Function CreaSocket(protoc,tcpudp,fam:integer):integer;
begin
asm
push protoc
push tcpudp
push fam
call socket
mov Descr,eax
end;
result:=descr;
end;
llamada jand:=CreaSocket(0,1,2);
---------------------------
Function ConectSocket(ipdest:dword;fami:U_short;sport:word;jande:dword):integer;
var
sockaddr:TSockAddrIn;
out:integer;
begin
asm
push sport
call htons
mov word ptr [sockaddr.sin_port],ax
mov ax, fami
mov word ptr [sockaddr.sin_family],ax
mov eax, ipdest
mov dword ptr [sockaddr.sin_addr], eax
mov edx, jande
lea eax, sockaddr
push 10h //Size
push eax
push edx
call connect
mov out, eax
end;
result:=out;
end;
llamada
asm
push destino %
Valora esta pregunta


0