NorfiPC
Aplicaciones HTA

Aplicaciones HTA para obtener información y diagnosticar redes

Códigos para crear páginas HTA que muestran parámetros del estado de la conexión a internet, usando los comandos NETSTAT, IPCONFIG, PING y NETCH.
Aplicaciones HTA para obtener información y diagnosticar redes
Comparto varios códigos creado por el autor, para crear aplicaciones que facilitan obtener información y diagnosticar el estado de las redes informáticas.
Son de utilidad para explotar todas las opciones que permiten los comandos NETSTAT, IPCONFIG, PING y NETCH, sin tener que usar el Símbolo del sistema.
Para crear las aplicaciones solo es necesario copiar y pegar el código en un nuevo archivo de texto plano y renombrarlo con la extensión HTA.



Aplicaciones HTA para redes

Aplicación HTA para ver parámetros de redes

Sencilla aplicación que permite dos opciones:
- Ver la configuración de la red con el comando NETCH.
- Ver la configuración TCP/IP con el comando IPCONFIG.
<html>
<head>
<title>Ver parámetros de redes</title>
<meta name="author" content="Norfi Carrodeguas">
<HTA:APPLICATION 
     ID="Ver parametro redes"
     APPLICATIONNAME="Ver parámetros de redes"
     SCROLL="yes"
     SINGLEINSTANCE="yes"
     WINDOWSTATE="normal"
>
<script type="text/javascript">
window.resizeTo(420, 300);
</script>
 
<script type="text/javascript"> 
function openNORFI() 
{ 
var shell = new ActiveXObject("WScript.Shell"); 
shell.run("http://norfipc.com"); 
} 
</script> 
<style type="text/css">
.button {width: 300px;margin:2px 0 2px 0;}    
</style> 
</head>

<SCRIPT Language=VBScript>
Sub Getip()
Set objShell = CreateObject("WScript.Shell")
strCommand = "cmd /k netsh interface ip show config"
objShell.Run strCommand, 1
End Sub

Sub Getipconfig()
Set objShell = CreateObject("WScript.Shell")
strCommand = "cmd /k ipconfig /all"
objShell.Run strCommand, 1
End Sub
</SCRIPT>

<BODY> <DIV ALIGN="center">
<h2>Ver parámetros de redes</h2>
<input id=runbutton  class="button" type="button" value="Ver configuración de redes con NETSH  " name="run_button"  onClick="Getip()"><br>
<input id=runbutton  class="button" type="button" value="Ver configuración TCP/IP con IPCONFIG" name="run_button"  onClick="Getipconfig()"><br><br>
<input id=runbutton  class="button2" type="button" value="CERRAR" name="run_button"  onClick="self.close()">
<p><font size="-1">&copy; 2019, NorfiPC<br>
<a href="http://norfipc.com/" target="_blank" onclick="openNORFI()"><font color="white">http://norfipc.com</a></font></p></div>
</div>
</body>
</html>



Aplicación HTA para ver información de redes

La aplicación permite ejecutar en el Símbolo del sistema varios comandos, para obtener información del estado de la red. Ofrece las siguientes opciones:
- Ver la configuración de redes con el comando NETSH.
- Ver la configuración TCP/IP con el comando IPCONFIG.
- Ver las conexiones actualmente establecidas con NETSTAT.
- Ver los puertos abiertos en escucha.
- Saber la MAC Address del adaptador de red.
<html>
<head>
<title>Informacion de redes a traves de CMD</title>
<meta name="author" content="Norfi Carrodeguas">
<HTA:APPLICATION 
     ID="Informacion de redes"
     APPLICATIONNAME="Informacion de redes"
     SCROLL="yes"
     SINGLEINSTANCE="no"
     WINDOWSTATE="normal"
>
<meta name="Description" content="Obtiene informacion de la configuracion de redes a traves de la linea de comandos mediante NETSH, IPCONFIG y NETSTAT">
<script>window.resizeTo(420, 400);</script>
<script type="text/javascript"> 
function openNORFI() 
{ 
var shell = new ActiveXObject("WScript.Shell"); 
shell.run("http://norfipc.com"); 
} 
</script> 
<SCRIPT LANGUAGE="VBScript">
    Sub Window_Onload
      window.opener = "x"
    End Sub
</SCRIPT>
<style type="text/css">
.button {width:300px;margin:2px 0 2px 0;} .button2 {width: 120px; text-align:center;}    
</style> 
</head>
<SCRIPT Language=VBScript>
Sub Getnetsh()
Set objShell = CreateObject("WScript.Shell")
strCommand = "cmd /k netsh interface ip show config"
objShell.Run strCommand, 1
End Sub
Sub Getipconfig()
Set objShell = CreateObject("WScript.Shell")
strCommand = "cmd /k ipconfig /all"
objShell.Run strCommand, 1
End Sub
Sub Getnetstat1()
Set objShell = CreateObject("WScript.Shell")
strCommand = "cmd /k netstat -a -n -b -proto TCP 05|findstr /c:ESTABLISHED"
objShell.Run strCommand, 1
End Sub
Sub Getnetstat2()
Set objShell = CreateObject("WScript.Shell")
strCommand = "cmd /k netstat -a -n|FINDSTR /C:LISTENING"
objShell.Run strCommand, 1
End Sub
Sub GetMAC()
Set objShell = CreateObject("WScript.Shell")
strCommand = "cmd /k getmac"
objShell.Run strCommand, 1
End Sub
</SCRIPT>
<BODY> <DIV ALIGN="center">
<h2>Información de redes</h2>
<input id=runbutton  class="button" type="button" value="Ver configuración de redes con NETSH" name="run_button"  onClick="Getnetsh()"><br>
<input id=runbutton  class="button" type="button" value="Ver configuración TCP/IP con IPCONFIG" name="run_button"  onClick="Getipconfig()"><br>
<input id=runbutton  class="button" type="button" value="Conexiones establecidas con NETSTAT " name="run_button"  onClick="Getnetstat1()"><br>
<input id=runbutton  class="button" type="button" value="Puertos abiertos en escucha" name="run_button"  onClick="Getnetstat2()"><br>
<input id=runbutton  class="button" type="button" value="Saber tu MAC Address" name="run_button"  onClick="GetMAC()">
<br><br>
<input id=runbutton  class="button2" type="button" value="CERRAR" name="run_button"  onClick="self.close()"><br><br><br><br>
<p><font size="-1">&copy; 2019, NorfiPC<br>
<a href="http://norfipc.com/" target="_blank" onclick="openNORFI()"><font color="white">http://norfipc.com</a></font></p></div>
</body>
</html>



Aplicación HTA para ver administrar la conexión de internet con NETSTAT

Aplicación para ejecutar todas las opciones que permite el comando NETSTAT.
Permite las siguientes opciones:
- Ver todas las conexiones establecidas.
- Ver estadísticas por protocolos.
- Ver puertos y direcciones en formato numérico.
- Ver solo conexiones del protocolo TCPv4.
- Ver los puertos abiertos que están a la escucha.
- Ver puertos con conexiones establecidas.
- Guardar informe del comando anterior en un archivo de texto.
- Ver nombre de las aplicaciones involucradas en cada conexión.
- Guardar informe del comando anterior en un archivo de texto.
Lee más información sobre el uso de este comando: Ver, conocer, e identificar con NETSTAT las conexiones establecidas

<html>
<head>
<title>Administrar conexiones con NETSTAT</title>
<meta name="author" content="Norfi Carrodeguas">
<HTA:APPLICATION 
     ID="NETSTAT"
     APPLICATIONNAME="NETSTAT"
     SCROLL="yes"
     SINGLEINSTANCE="no"
     WINDOWSTATE="normal"
>
<meta name="Description" content="Permite acceder a los principales comandos de NETSTAT disponibles en la consola de CMD">
<script>window.resizeTo(420, 500);</script>
<script type="text/javascript"> 
function openNORFI() 
{ 
var shell = new ActiveXObject("WScript.Shell"); 
shell.run("http://norfipc.com"); 
} 
</script> 
<SCRIPT LANGUAGE="VBScript">
    Sub Window_Onload
      window.opener = "x"
    End Sub
</SCRIPT>
<style type="text/css"> 
.button {width:300px;margin:2px 0 2px 0;} .button2 {width: 120px; text-align:center;} 
   
</style> 
</head>
<SCRIPT Language=VBScript>
Sub GetNETSTAT()
Set objShell = CreateObject("WScript.Shell")
strCommand = "cmd /k NETSTAT -AO 04"
objShell.Run strCommand, 1
End Sub

Sub GetNETSTATS()
Set objShell = CreateObject("WScript.Shell")
strCommand = "cmd /k NETSTAT -AOS 04"
objShell.Run strCommand, 1
End Sub

Sub GetNETSTAT2()
Set objShell = CreateObject("WScript.Shell")
strCommand = "cmd /k NETSTAT -AON 04"
objShell.Run strCommand, 1
End Sub

Sub GetNETSTAT3()
Set objShell = CreateObject("WScript.Shell")
strCommand = "cmd /k NETSTAT -AON -P TCP 04"
objShell.Run strCommand, 1
End Sub

Sub GetNETSTAT4()
Set objShell = CreateObject("WScript.Shell")
strCommand = "cmd /k NETSTAT -AN 04|FINDSTR /C:LISTENING"
objShell.Run strCommand, 1
End Sub

Sub GetNETSTAT5()
Set objShell = CreateObject("WScript.Shell")
strCommand = "cmd /k NETSTAT -AN -P TCP 04|FINDSTR /C:ESTABLISHED"
objShell.Run strCommand, 1
End Sub

Sub GetNETSTAT5I()
Set objShell = CreateObject("WScript.Shell")
strCommand = "cmd /k NETSTAT -AN -P TCP 04|FINDSTR /C:ESTABLISHED>C:\AA.TXT"
objShell.Run strCommand, 1
End Sub

Sub GetNETSTAT6()
Set objShell = CreateObject("WScript.Shell")
strCommand = "cmd /k NETSTAT -AN -b -P TCP 04|FINDSTR /C:ESTABLISHED"
objShell.Run strCommand, 1
End Sub

Sub GetNETSTAT6B()
Set objShell = CreateObject("WScript.Shell")
strCommand = "cmd /k NETSTAT -ANB -P TCP 04|FINDSTR /C:ESTABLISHED>C:\BB.TXT"
objShell.Run strCommand, 1
End Sub
</SCRIPT>
<BODY> 
<DIV ALIGN="center">
<h2>Administrar conexión con NETSTAT</h2>
<input id=runbutton  class="button" type="button" value="Ver todas las conexiones establecidas" name="run_button"  onClick="GetNETSTAT()"><br>
<input id=runbutton  class="button" type="button" value="Todas las estadísticas por protocolos" name="run_button"  onClick="GetNETSTATS()"><br>
<input id=runbutton  class="button" type="button" value="Puertos y direcciones en formato numérico" name="run_button"  onClick="GetNETSTAT2()"><br>
<input id=runbutton  class="button" type="button" value="Solo conexiones del protocolo TCPv4" name="run_button"  onClick="GetNETSTAT3()"><br>
<input id=runbutton  class="button" type="button" value="Puertos abiertos que estan a la escucha" name="run_button"  onClick="GetNETSTAT4()">
<input id=runbutton  class="button" type="button" value="Puertos con conexiones establecidas" name="run_button"  onClick="GetNETSTAT5()">
<input id=runbutton  class="button" type="button" value="Informe del comando anterior" name="run_button"  onClick="GetNETSTAT5I()">
<input id=runbutton  class="button" type="button" value="Aplicacion involucrada en cada conexión" name="run_button"  onClick="GetNETSTAT6()">
<input id=runbutton  class="button" type="button" value="Informe del comando anterior" name="run_button"  onClick="GetNETSTAT6B()"><br><br>
<input id=runbutton  class="button2" type="button" value="CERRAR" name="run_button"  onClick="self.close()">
<br><br><br>
<p><font size="-1">&copy; 2019, NorfiPC<br>
<a href="http://norfipc.com/" target="_blank" onclick="openNORFI()"><font color="white">http://norfipc.com</a></font></p></div>
</body>
</html>



Aplicación HTA para hacer ping a un dominio o dirección IP

Permite hacer PING a una dirección IP o a un nombre de dominio de internet.
Se puede seleccionar el número de solicitudes de eco que se van a enviar.
El valor predeterminado es 4, pero se puede escoger 8, 20 o infinitas, con la opción ping –t
Lee más información sobre el uso de este comando: Como usar el comando PING en conexiones de redes
<html>
<head>
<title>Hacer Ping</title>
<meta name="author" content="Norfi Carrodeguas">
<HTA:APPLICATION 
     APPLICATIONNAME="Ping"
	 ID="objPing_Info" 
     SCROLL="no"
     SINGLEINSTANCE="yes"
     >
<script>window.resizeTo(420, 360);</script>	 	 
</head>
<script runat="server" language="VBScript">	
	Sub Run_Cmd(strCommand) ' Opens CMD and runs Ping	
		Dim IP_Address
		IP_Address = Replace(strCommand,"	","")
		oSelection = document.getElementById("MySelection").value
		Set objShell = CreateObject("WScript.Shell")
		objShell.Run "%COMSPEC% /k ping " & oSelection & IP_Address
		' Call the save function
		Call saveData(IP_Address)
	End Sub

	' Saves input to file root dir	
	Sub saveData(strLog) 
		
		' Get the current path of app 
		FullName = replace(objPing_Info.commandLine,chr(34),"")  
		arrFN=split(FullName,"\")  
		FileName = arrFN(ubound(arrFN))  
		SourceDir=replace(FullName,FileName,"")  
		
		' Write to file
		Dim fso, f
		Set fso = CreateObject("Scripting.FileSystemObject") 
		Set f = fso.OpenTextFile(SourceDir & "ping.txt", 8, true) 
		f.WriteLine(Now) & " " & strLog
		' f.WriteLine(strLog) 
		f.Close
    End Sub	
</SCRIPT>
<body>
<DIV ALIGN="center">
<h2>Hacer PING</h2>
<input type="text" Name="input" size="10" style="width:80%;margin:4px 0 4px 0;height:40px;" value="8.8.8.8" onclick='javascript: this.value = ""' style="background-color:lightblue">

<select style="width:120px" size="1" name="selection" id="MySelection">
		
		<option value="-n 4 ">ping -n 4</option>
		<option value="-n 8 ">ping -n 8</option>
		<option value="-n 20 ">ping -n 20</option>
		<option value="-t ">ping -t</option>
</select> <br>
<br>
<input type="submit" name="btnClick" value="Hacer Ping" onclick="Run_Cmd(input.value)"><br><br><br>
<input id=runbutton  class="button2" type="button" value="CERRAR" name="run_button"  onClick="self.close()">
<br><br>
<p><font size="-1">&copy; 2019, NorfiPC<br>
<a href="http://norfipc.com/" target="_blank" onclick="openNORFI()"><font color="white">http://norfipc.com</a></font></p>
</div>
</body>



Aplicación HTA para ejecutar el comando IPCONFIG

Permite ejecutar el comando IPCONFIG, mostrando en la ventana de la aplicación el resultado.
IPCONFIG muestra información y todos los datos de la configuración del equipo para el protocolo TCP/IP.
La aplicación ejecuta los siguientes comandos:
IPCONFIG /all
IPCONFIG /all
IPCONFIG /displaydns
IPCONFIG /renew
Lee más información sobre el uso de este comando: Como usar el comando IPCONFIG en Windows
<html>
<head>
<title>Comandos de IPCONFIG</title>
<meta name="author" content="Norfi Carrodeguas">
  <hta:application id="ipconfig" 
    applicationname="ipconfig" 
    icon="ipconfig.ico"
    singleinstance="yes"
    border="dialog"
    innerborder="no"
    scroll="no"
  >
  <script>window.resizeTo(700, 480);</script>
<script language="JavaScript" type="text/javascript">
var shell = new ActiveXObject("WScript.Shell");
function ipconfig( param ) {
	var cmd = "ipconfig";
	if ( param )
		cmd += " /"+param;
	var exe = shell.exec( cmd );
	var out = "";
	while( !exe.stdOut.atEndOfStream ) {
		var s = exe.stdOut.readLine();
		s = s.replace( /\r/gm, "" );
		out += s+"\n";
	}
	document.getElementById( "output" ).value = out;
}
</script>
<!-- VER DNS -->
<script type="text/vbscript"> 
Sub verdns() 
Set objShell = CreateObject("WScript.Shell")
strCommand = "C:\Windows\System32\cmd.exe /c IPCONFIG /displaydns > resultado.dat"
objShell.Run strCommand, 1
strCommand = "C:\Windows\System32\cmd.exe /c start notepad resultado.dat"
objShell.Run strCommand, 1

End Sub
</script>
<style type="text/css">
body {
	background-color: buttonface;
	color: buttontext;
	font-family: "MS Sans Serif", Arial, sans-serif;
}
button {
	margin: 5px 5px 0 0;
	width: 6em;
}
p {
	font-size: smaller;
}
</style>
</head>
<body>
<form>
<h2>IPCONFIG</h2>
<p>Muestra la configuración simple y avanzada, muestra registros DNS y renueva la conexión</p>
<textarea id="output" readonly rows="18" cols="80"></textarea>
<div style="float: right">
<button onclick="window.close()" title="Close application">Close</button>
</div>
<button onclick="ipconfig()" title="Show configuration">IPconfig</button>
<button onclick="ipconfig('all')" title="Show detailed configuration">All</button>
<button onclick="verdns()" title="Show detailed configuration">Ver DNS</button>
<button onclick="ipconfig('renew')" title="Renew configuration">Renew</button>
</form>
</body>
</html>

Más información

Páginas y aplicaciones HTA, uso y funciones prácticas
Como crear una página o aplicación HTA
Solucionar problemas de conexión a internet usando comandos
Aplicación HTA para validar archivos XML offline


Comparte