IdUDPServer1.Broadcast(arr, port,'');

解决方案 »

  1.   

    Broadcast   
     IdUDPServer1.Broadcast('255.255.255.255',9999); 用这个我无法发送具体数据出去啊 ,那边的设备 将 SendStruct 整个结构  广播发出
    IdUDPServer1.SendBuffer('192.168.0.255',9999,Buffer,Sizeof(SendStruct));  这个还不可以.
      

  2.   

    self.IdUDPServer1.Broadcast('hello world','');
    or
    self.IdUDPServer1.Broadcast('hello world','255.255.255.255');
    or
    self.IdUDPServer1.Broadcast('hello world','192.168.0.255');
      

  3.   

    procedure TIdUDPBase.Broadcast(const AData: string; const APort: TIdPort;
      const AIP: String = ''; AByteEncoding: IIdTextEncoding = nil
      {$IFDEF STRING_IS_ANSI}; ASrcEncoding: IIdTextEncoding = nil{$ENDIF});看函数原形,第一个参数是要发送的数据
      

  4.   

    IdUDPServer1.Broadcast  这个只能发字符串出去 我怎么样才能把我的结构体数据发出去.
    我的结构体是type
      SendStruct =packed record
             Cmd:  byte;    // 命令码 */
            TSASID:  array[0..11] of byte;    // TSAS唯一ID */  Word
            CfgPCMAC:  array[0..5] of byte;    // 配置PC的MAC地址
            IPAddr:  array[0..3] of byte;    //  TSAS的IP地址
            GWIP:  array[0..3] of byte;    ///* 网关IP地址 */
            Mask:  array[0..3] of byte;    ///* 子网掩码 */
            MAC:  array[0..5] of byte;    // /* TSAS的MAC地址 */
            SerPort:  Word;    //                 /* 服务器的端口 */
            SerIPAddr:  array[0..3] of byte;    //           /* 服务器的IP地址 */
            SerDomainName:  array[0..99] of byte;    //    /* 服务器的域名 */        BakSerPort:  Word;    //                 /* 备用服务器的端口 */
            BakSerIPAddr:  array[0..3] of byte;    //           /* 备用服务器的IP地址 */
            BakSerDomainName:  array[0..99] of byte;    //    /* 备用服务器的域名 */        DNSIPAddr:  array[0..3] of byte;    //            /* DNS服务器的IP地址 */
            DNSEnable:  byte;    //                /* DNS使能 */
            end;
      

  5.   

    procedure TIdUDPBase.Broadcast(const AData: TIdBytes; const APort: TIdPort;
      const AIP: String = '');还有个发送TIdBytes的广播函数,可以满足你的需求
      

  6.   

    procedure TForm27.FormCreate(Sender: TObject);
    var
      sdata: SendStruct;
      sbyte: TIdBytes;
    begin
      sbyte := RawToBytes(sdata, SizeOf(sdata));
      self.IdUDPServer1.Broadcast(sbyte, 1212);
    end;这样转换应该可以了
      

  7.   


    谢谢 ksrsoft procedure TIdUDPBase.Broadcast(const AData: TIdBytes; const APort: TIdPort;
      const AIP: String = '');这个 我怎么没有呢,我用的是delphi7,