Saber si dispones de una conexión a internet activa

Puede que tu aplicación necesite conocer de antemano si tienes conexión a Internet. Generalmente, si vas a consumir servicios web o establecer conexiones en la red. Para ello puedes implementar esta pequeña función que te indicará si dispones o no de internet en el equipo.

public static bool HaveInternet()

        {

            bool result = false;

            // Ver si tenemos conexión a la red local

            if (System.Net.NetworkInformation.NetworkInterface.GetIsNetworkAvailable())

            {

                System.Uri Url = new System.Uri(“https://www.google.com/”);

                System.Net.WebRequest WebRequest;

                WebRequest = System.Net.WebRequest.Create(Url);

                System.Net.WebResponse objResp;

                try

                {

                    objResp = WebRequest.GetResponse();

                    objResp.Close();

                    result = true;

                }

                catch (Exception)

                {

                    result = false;

                }

                WebRequest = null;

            }

            else //No hay conexión activa a una red, por lo tanto no hay internet

            {

                result = false;

            }

            return result;
        }

Para ponerlo a prueba puedes implementar un pequeño método como el siguiente:

private void tengoInternetToolStripMenuItem_Click(object sender, EventArgs e)

        {

            bool tengoInternet = MyClase.HaveInternet();

            if (tengoInternet)

            {

                MessageBox.Show(“Tengo internet activa.”, “Test”, MessageBoxButtons.OK, MessageBoxIcon.Information);

            }

            else

            {

                MessageBox.Show(“No tengo internet.”, “Test”, MessageBoxButtons.OK, MessageBoxIcon.Information);

            }

        }

Ponlo a prueba, piensa en cómo mejorarlo y comparte con nosotros tus progresos.

Scroll al inicio
Abrir chat
1
Hola
¿En qué podemos ayudarte?