HKEY_LOCAL_MACHINE\SYSTEM\CURRENTCONTROLSET\SERVICES\TCPIP\PARAMETERS\iNTERFACES下的子项中有{33AB6FE7-9263-4782-A8D4-085BBA932795} 和{5397E4A6-7430-4329-A7D4-4281F4CEF58E}两个项,有时可能有类似的3个这样的子项或更多,该项下有关于DNS的设置,但是我如何确定该在哪一个子项下呢(比如是在{5397E4A6-7430-4329-A7D4-4281F4CEF58E}还是在{33AB6FE7-9263-4782-A8D4-085BBA932795}),在DEIPHI中如何具体实现,请各位高手指教。200 分回报。

解决方案 »

  1.   

    7,动态改变DNS Server的地址
    下面的函数可以添加 DNS Server的地址
    如想添加202.100.100.65 202.10.10.10
    SetDNSAddresses('202.100.100.65 202.10.10.10') ;
    //注意: 各地址之间用一个空格隔开SetTDNSAddresses 定义如下:procedure SetDNSAddresses( sIPs : string );
    begin
    // 如果是 Windows NT用下面的代码
    SaveStringToRegistry_LOCAL_MACHINE(
    'SYSTEMCurrentControlSet' +
    'ServicesTcpipParameters',
    'NameServer',
    sIPs );// 如果你用的是Windows 95用下面的代码SaveStringToRegistry_LOCAL_MACHINE(
    'SYSTEMCurrentControlSet' +
    'ServicesVxDMSTCP',
    'NameServer',
    sIPs );
    end;其中 SaveStringToRegistry_LOCAL_MACHINE 定义:uses Registry;procedure SaveStringToRegistry_LOCAL_MACHINE(
    sKey, sItem, sVal : string );
    var
    reg : TRegIniFile;
    begin
    reg := TRegIniFile.Create( ' );
    reg.RootKey := HKEY_LOCAL_MACHINE;
    reg.WriteString( sKey, sItem, sVal + #0 );
    reg.Free;
    end;
      

  2.   

    如果修改注册表
    先找到适配器(Adapters)
    根据相应的adapter修改相应的dns就可以了
      

  3.   

    關於修改注冊表
    1.確保你有權限進行修改操作
    2.從注冊表中查找你所要修改的東西,得到其具體的位置,如果還不能確定其具體的位置,可以多試幾台機
    3.利用Registry單元中的TRegistry進行操作注冊表,即可
      

  4.   

    如何找到对应的适配器(Adapters)啊,各位大侠?我的机器装了一个网卡,也只有一个IP地址,怎么
    HKEY_LOCAL_MACHINE\SYSTEM\CURRENTCONTROLSET\SERVICES\TCPIP\PARAMETERS\iNTERFACES下有好几个项目啊,我怎么确定哪一个是啊?急啊,各位大侠,请速速指教,谢了!!!
      

  5.   

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Adapters
    下面有Adapters对应的键值
    用这个键值在后面的interfaces里面找