各位大虾,目前在做一个邮件服务器,采用WINSHOE组件,在实现外发的时候,组件本身只检查首选DNS,没有使用备选DNS(可能有多个)。目前正在修改组件,但不知该怎样取得所有的DNS?

解决方案 »

  1.   

    谢啦,
    没人知道吗?
    upupup
      

  2.   

    对了,在2000下
    HKEY_LOCAL_MACHINE\System\ControlSet001\Services\Tcpip\Parameters
    中的参数,是否有相关信息呢,该如何读取呢?
      

  3.   

    是不是我说的不够清楚呀,是指的INTERNET协议(TCP/IP)属性中的DNS服务器地址一栏的值:包括 首选DNS服务器和备选DNS服务器
      

  4.   

    设置TCP/IP的DNS地址    (你可以自己把程序转成获得)
      例如,把 DNS Server的地址添加为192.0.0.1和192.1.1.0,可调用: 
    SetTCPIPDNSAddresses('192.0.0.1 192.1.1.0') ;// 各地址之间用一个空格隔开1. SetTCPIPDNSAddresses 定义如下:procedure SetTCPIPDNSAddresses( sIPs : string );begin//// if using Windows NT//SaveStringToRegistry_LOCAL_MACHINE('SYSTEM' +'','NameServer',sIPs );//// if using Windows 95//SaveStringToRegistry_LOCAL_MACHINE('SYSTEM' +'','NameServer',sIPs );end;2. 其中 SaveStringToRegistry_LOCAL_MACHINE 定义:uses Registry;procedure SaveStringToRegistry_LOCAL_MACHINE(sKey, sItem, sVal : string );varreg : TRegIniFile;beginreg := TRegIniFile.Create( '' );reg.RootKey := HKEY_LOCAL_MACHINE;reg.WriteString( sKey, sItem, sVal + #0 );reg.Free;end; 
     
       
      

  5.   

    //if using Windows NT//SaveStringToRegistry_LOCAL_MACHINE('SYSTEM' +'','NameServer',sIPs );// if using Windows 95//SaveStringToRegistry_LOCAL_MACHINE('SYSTEM' +'','NameServer',sIPs );这两个怎么没有区别呢
      

  6.   

    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\MSTCP下有个NameServer字符串键值,读取后分解得到