procedure TForm1.cmdpoweronClick(Sender: TObject);var
   str:string;
   i:smallint;
begin
NMUDP1.Host:='chinavcai.com';
NMUDP1.Port:=7010;
NMUDP1.Active:=true;
str:=stringofchar(#255,6);
 for i:= 0 to 15 do
    str:=str+chr($00)+chr($D0)+chr($09)+chr($E5)+chr($F3)+chr($B9);
Memoinfo.Lines.Add('第N次发送:'+str);
NMUDP1.Send(str);
end;

解决方案 »

  1.   

    如果是中文windows,不能直接发送大于127的字符
      

  2.   

    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
      StdCtrls,NMUDP;type
      TForm1 = class(TForm)
        Button1: TButton;
        NMUDP1: TNMUDP;
        procedure Button1Click(Sender: TObject);
      private
        procedure UDPSend(SendCode: String);
        { Private declarations }
      public
        { Public declarations }
      end;var
      Form1: TForm1;implementation{$R *.DFM}procedure TForm1.UDPSend(SendCode: String);
    var
      SendMStream:TMemoryStream;
    begin
      SendMStream:=TMemoryStream.Create;
      try
        NMUDP1.ReportLevel:=1;
        NMUDP1.RemoteHost:='188.0.255.255';
        NMUDP1.RemotePort:=7010;
        SendMStream.Write(SendCode[1],length(SendCode));
        NMUDP1.SendStream(SendMStream);
      finally
        SendMStream.Free;
      end;
    end;procedure TForm1.Button1Click(Sender: TObject);
    var
      SendCode:string;
      TempStr:string;
      i:byte;
    begin
      SendCode:=StringofChar(#255,6);
      for i:=0 to 15 do
          begin
          TempStr:=TempStr
                  +string(char($00))
                  +string(char($50))
                  +string(char($BA))
                  +string(char($EC))
                  +string(char($71))
                  +string(char($A6));
          end;
      SendCode:=SendCode+TempStr;
      UDPSend(SendCode);
    end;
    end.
      

  3.   

    0000:  FF FF FF FF FF FF 52 54 AB 37 BF 93 08 00 45 00 ......RT.7....E.
    0010:  00 82 72 B3 00 00 80 11 4F CD 0A BA 62 32 0A FF ..r.....O...b2..
    0020:  FF FF 0D 65 09 00 00 6E D3 F8 FF FF FF FF FF FF ...e...n........
    0030:  11 22 33 44 55 66 11 22 33 44 55 66 11 22 33 44 ."3DUf."3DUf."3D
    0040:  55 66 11 22 33 44 55 66 11 22 33 44 55 66 11 22 Uf."3DUf."3DUf."
    0050:  33 44 55 66 11 22 33 44 55 66 11 22 33 44 55 66 3DUf."3DUf."3DUf
    0060:  11 22 33 44 55 66 11 22 33 44 55 66 11 22 33 44 ."3DUf."3DUf."3D
    0070:  55 66 11 22 33 44 55 66 11 22 33 44 55 66 11 22 Uf."3DUf."3DUf."
    0080:  33 44 55 66 11 22 33 44 55 66 11 22 33 44 55 66 3DUf."3DUf."3DUf上面是抓到的一个远程开机的网络数据包,发送端的MAC是52 54 AB 37 BF 93 ,接收方的MAC是
    11 22 33 44 55 66,发送端的IP地址是10.186.98.50,广播地址是10.255.255.255,你自己去分析一下怎样才能发一个复合你的实际情况的UDP数据包...
      

  4.   

    请问:
    为什么我找不到NMUDP.DCU库?所以也编译不了,请您帮忙,NMUDP从哪里来的?
      

  5.   

    delphi5,6都有,delphi7没乍用过,是不是没了??
      

  6.   

    NMUDP在Delphi6的FastNat面版里,在这个面版里有不少有用的东东,可是Delph7居然去掉了这个面版,不知是不是制做者发烧昏了头了。