FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Cambiar direcciones IP y DNS de tarjeta red desde delphi
Hola a todos!!!
¿Puedo cambiar las direcciones TCP/IP y DNS desde Delphi sin necesidad de ir a Conexiones de red -> Propiedades -> Protocolo Internet TCP/IP de Windows XP? Agradecería una respuesta Gracias anticipadas. |
#2
|
|||
|
|||
Donde puedo encontrar información sobre esto?
Gracias anticipadas. |
#3
|
|||
|
|||
Hola amigos!!!
Encontré la solución en la página http://msdn.microsoft.com/library/de...figuration.asp; está muy bien explicado como funciona el WMI (Windows Management Instrument), lo que pasa es que está escrito el código en Visual Basic. Aquí inserto el código para cambiar direcciones IP y DNS sin necesidad de ir a propiedades de la conexión de red de windows: Código:
strComputer = "." ''''''el punto significa computadora local strNetConn = "Conexión de área local" '''''''nombre de la connexión de red Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") Set colNics = objWMIService.ExecQuery("SELECT * FROM " & "Win32_NetworkAdapter WHERE NetConnectionID = '" & strNetConn & "'") If colNics.Count > 0 Then ''''si hay alguna connexión llamada 'Conexión de área local' For Each objNic in colNics Set colNicConfigs = objWMIService.ExecQuery ("ASSOCIATORS OF " & _ "{Win32_NetworkAdapter.DeviceID='" & objNic.DeviceID & "'}" & " WHERE AssocClass=Win32_NetworkAdapterSetting") For Each objNicConfig In colNicConfigs WScript.Echo VbCrLf & "Tipus d'adaptador:" & objNic.AdapterType & " Nombre de la connexión:" & objNic.NetConnectionID If Not IsNull(objNicConfig.IPAddress) Then For Each strIPAddress in objNicConfig.IPAddress Wscript.Echo " Adreça IP: " & strIPAddress strIPAddress = Array("172.16.0.20") strSubnetMask = Array("255.255.0.0") strGateway=Array("172.16.0.1") strGatewayMetric = Array(1) '''''si es (0) NO requiere reiniciar, si es (1) SÍ strDNS = Array(("50.88.10.43"),("50.88.12.56")) errEnable = objNicConfig.EnableStatic(strIPAddress, strSubnetMask) errGateway=objNicConfig.SetGateways(strGateway, strGatewaymetric) errDNS = objNicConfig.SetDNSServerSearchOrder(strDNS) Next End If Next Next Else WScript.Echo "No se puede encontrar el NetconnectID con nombre '" & strNetConn & "'." & _ VbCrLf & "Si tiene el Windows 2000 o anteriores, la propiedad NetConnectionID no está habilitada." End If Espero que sirva. |
#4
|
|||
|
|||
Hola, olvidé decir que luego abro el Delphi, creo un botón y ejecuto el archivo "miarchivo.VBS" con la función ShellExecute(......)
Hasta luego |
|
|
|