?id=6acf616c-78aa-4bee-9070-efdaef170b12
Cómo conectar y desconectar automáticamente un Módem
por José M. Alarcón
El otro día ayudando a una persona surgió la necesidad de que una aplicación se conectara y se desconectara de Internet automáticamente utilizando un módem estándar, a través de la línea telefónica. La aplicación estaba escrita en Visual Basic 6 (nada de .NET). Tras darle vueltas un rato llegué a esta solución que pasa por usar la API de Windows para conseguirlo:
' Declaraciones de la API
Private Declare Function InternetAutodial Lib "wininet.dll" _
(ByVal dwFlags As Long, ByVal dwReserved As Long) As Long
Private Declare Function InternetAutodialHangup Lib "wininet.dll" _
(ByVal dwReserved As Long) As Long
Private Const INTERNET_AUTODIAL_FORCE_ONLINE = 1
Private Const INTERNET_AUTODIAL_FORCE_UNATTENDED = 2
Con ellas, para conectarse a Internet de forma automática con un módem, sin intervención del usuario, sólo hay que escribir:
InternetAutodial INTERNET_AUTODIAL_FORCE_UNATTENDED, 0
Para desconectarse al terminar de hacer lo que necesitamos en la Red sólo hay que escribir:
InternetAutodialHangup 0
Si queremos conectarnos pero pedir confirmación al usuario antes la instrucción precisa es:
InternetAutodial INTERNET_AUTODIAL_FORCE_ONLINE, 0
Con esto se solucionó el problema.
Es muy fácil pasar estas declaraciones de la API a .NET y hacer uso de las mismas desde aplicaciones en C# o VN.NET.
José Manuel Alarcón Aguín
Fundador de
campusMVP.es, el
proyecto de referencia en formación on-line para programadores en lengua española.
Autor de varios libros y cientos de artículos. Galardonado como
MVP de Microsoft desde 2004. Gallego de Vigo, amante de la ciencia y la
tecnología, la música y la lectura. Ayudando a la gente en Internet desde 1996.