 shelter » 19.05.2016 00:48:31
 shelter » 19.05.2016 00:48:31 
			
			Установить драйвер WinPCap. Для Delphi есть заголовочные файлы. Через него можно слать и принимать Ethernet пакеты.
procedure TSendingThread.ExecuteInternal;
const BUF_SIZE = 2048;
var buf: PByteArray;
    pkt: Ppacket;
    len: word;
    seq: byte;
    nowEmpty: boolean;
begin
  seq := 0;
  buf := GetMemory(BUF_SIZE);
  try
    Move(Eth.FEthernet.snd.mac, buf^[0], 6);
    Move(Eth.FEthernet.rcv.mac, buf^[6], 6);
    buf^[12] := hi(Eth.FEthernet.snd.typ);
    buf^[13] := lo(Eth.FEthernet.snd.typ);
    pkt := PacketAllocatePacket;
    if pkt = nil then PCapCheck(false, 'PacketAllocatePacket');
    try
       ...
        PacketInitPacket(pkt, buf, 17 + len);
        PCapCheck(PacketSendPacket(Eth.FEthernet.Adapter, pkt, false), 'PacketSendPacket');
      end;
    finally
      PacketFreePacket(pkt);
    end;
  finally
    FreeMem(buf);
  end;
end;