多谢!!

解决方案 »

  1.   

    IdUDPClient 不太清楚,但是IdTCPClient控件有个BoundIP的属性,这个属性是绑定IP用的,你的网卡IP比方是192.168.1.2、另外个是10.10.1.3如果你想从192的网卡出去,那么就设定BoundIP为192的IPIdUDPClient控件没有BoundIP的属性,所以不太好办,你可以查看参考IdTCPClient控件的具体property BoundIP: string read FBoundIP write FBoundIP;功能,然后增加更改此语句。
      

  2.   

    dos下有个,route的指令是添加路由 的route还有个参数可以设定访问某IP时从指定网卡出去,这样,就不用设定BoundIP,即可实现该功能
      

  3.   

    数据包走向并不取决于你的应用程序,而取决于你当前机器的路由表。
    当你有两块网卡,默认数据包一般都由其中的一块走。
    如果你想指定某一网段的数据包走指定的网卡,你必须使用Route命令修改路由表。
    Route命令的详细用法,请参考windows帮助。
    例如我有两块网卡,一块内网,内网路由器地址是“10.0.0.1”
    一块外网,外网路由器地址是“192.168.0.1”
    我想指定以10开头的IP地址走内网路由器,其余的所有IP地址都走外网路由器:
    route delete 0.0.0.0
    route add 0.0.0.0 mask 0.0.0.0 192.168.0.1
    route add 10.0.0.0 mask 255.0.0.0 10.0.0.1
      

  4.   

    电脑中有2块网卡,用idudpclient控件发送数据,如何指定从其中的一个网卡走数据呀? 急!idudpclient 发送数据有三种方式,1,点对点,指定对方IP,你两块网卡IP应该是不用的吧?如果相同的,走那个都无所谓了,是
    2.广播,
       1)利用X.X.X.255这个地址进行,这个和你的网卡相关的,走那个就是那个
       2)用255.255.255.255 进行, 这个,两个网卡都有数据发送
    3.组播,我没有做过,不清楚
      

  5.   

    必须用socket的api
    setsockopt(Socket,IPPROTO_IP,IP_MULTICAST_IF,pchar(@(dt)),4);
      

  6.   

    能不能在程序里让用户选定其中一个网卡,然后通过程序获取到选定网卡的IP,进行数据包的发送,偶也遇到相同的问题用的是IdTCPClient控件,请高手赐