谁会写转发数据包的程序?500分(100分)

  • 主题发起人 主题发起人 liutan
  • 开始时间 开始时间
请问关于uses IpHdr的单元文件在哪
 
unit IpHdr;

interface
uses Windows,WinSock;
type
TIPHdr=record
ip_verlen:BYTE;
ip_tos:Byte;
ip_totallength:Word;
ip_id:Word;
ip_offset:Word;
ip_ttl:Byte;
ip_protocol:Byte;
ip_checksum:Word;
ip_srcaddr:DWORD;
ip_destaddr:DWORD;
end;
PIPHdr=^TIPHdr;
TUDPHdr=record
udp_srcport:Word;
udp_destport:Word;
udp_length:Word;
udp_checksum:Word;
end;
PUDPHdr=^TUDPHdr;
function inet_checksum(var buf;buflen:Integer):Word;
function LookupName(const name:string;var addr:TInAddr):Boolean;
implementation
function LookupName(const name: string;var addr:TInAddr):Boolean;
var
HostEnt: PHostEnt;
begin
Result:=False;
addr.S_addr:=inet_addr(PChar(name));
if(addr.S_addr=-1)then
begin
HostEnt := gethostbyname(PChar(Name));
FillChar(Addr, SizeOf(Addr), 0);
if HostEnt <> nil then
begin
with addr, HostEnt^ do
begin
S_un_b.s_b1 := h_addr^[0];
S_un_b.s_b2 := h_addr^[1];
S_un_b.s_b3 := h_addr^[2];
S_un_b.s_b4 := h_addr^[3];
end;
Result:=True;
end;
end
else Result:=True;
end;

function inet_checksum(var buf;buflen:Integer):Word;
var
pBuf:PWord;
cksum:DWORD;
begin
cksum:=0;
pBuf:=PWord(buf);
while(buflen>1)do
begin
cksum:=cksum+pBuf^;
Inc(pBuf);
Dec(buflen,SizeOf(Word));
end;
if(buflen<>0)then
begin
cksum:=cksum+pBuf^;
end;
cksum:=(cksum shr 16)+(cksum and $ffff);
cksum:=cksum shr 16;
result:=not cksum;
end;
 
to gale:
在下愚笨,请大侠给我一个完整的程序,可以吗。
EMAIL:yjh@newease.com

谢谢!


 
谁做好应用程序的话,我给他分!
mailto:liutan500@sina.com[:)]
 
大家加油呀!!分数加到1500,重赏!!!
 
我也可以加500分.
 
忘了写Email。
Bigroute@hotmail.com
 
to:gale
能否mail一份完整的netke@sina.com,tks
 
to:gale
我也想要一份完整的,谢谢。meiqun0707@hotmail.com
 
to:gale
me too . savenight@21cn.com
 
to:gale
我也想要一份完整的,谢谢。fddsa@netease.com
 
我也想要一份完整的,谢谢。sh630@163.net
 
我也在做,好像不太好用,哪位指导一下!
 
我也想要,谢谢。 kenwoo@263.net
 
谢谢大家
我也正在找这个程序
 
To:gale 我也想要,谢谢. Lt_wxy@163.com
 
to gale:
给偶有一份吧,谢谢!
goofree@163.com
 
可以发我一份吗 tangjian113@163.net
 
to gale:
给偶有一份吧,谢谢!
zhang_yz@163.com
 
to gale:
谢谢,给我一份,谢谢!
apple.zone@163.com
 
后退
顶部