Testanto conexão, mas abrindo pasta

Eu estava buscando alguma coisa na internet para me auxiliar no teste para identificar endereço é válido. o que eu achei funciona que é uma blz, mas ele fica abrindo as pastar ou as paginas na internet nas respectivas janelas.

o código que eu tenho é este.: todos meu arquivo. Lembrando que em mProcesso.StartInfo.CreateNoWindow = true; // tentei com false tb

using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;

namespace Utils
{
   public class Internet
    {

        //Método da API
        [DllImport("wininet.dll")]
        private extern static Boolean InternetGetConnectedState(out int Description, int ReservedValue);

        
        /// <summary>
        /// verificar se está conectado a rede
        /// </summary>
        /// <returns></returns>
        public static Boolean IsConnected()
        {
            int Description;
            return InternetGetConnectedState(out Description, 0);
        }

        public static Boolean ConnectedStateIn(string locale)
        {
            bool status = true;

            // Se a internet esta conectada
            if (IsConnected())
            {
                Process mProcesso = new Process();

                // indica se deve usar o shell do sistema
                // operacional para iniciar o processo
                mProcesso.StartInfo.UseShellExecute = true;
                // podemos iniciar qualquer processo
                mProcesso.StartInfo.FileName = locale;
                // indica se o processo deve iniciar em uma nova janela
                mProcesso.StartInfo.CreateNoWindow = true; // tentei com false tb
                mProcesso.Start();
            }
            else
            {
                status = false;
            }

            return status;
        }
    }
}

e uso desta forma:
Internet.ConnectedStateIn("http://www.dominio.br"
dentro também testo “C:\controle”

achei também esta instrução “NetworkInterface.GetIsNetworkAvailable()” que funciona, mas estou buscando algo onde eu possa passar o endereço para fazer o teste

Olá,

Acho que aqui tem uma resposta que te ajuda:

Abs

@Zabimaru vlw cara, consegui esta solução assim.:

namespace Utils
{
    public class Internet
    {
        [DllImport("wininet.dll")]
        private extern static bool InternetGetConnectedState(out int Description, int ReservedValue);

        /// <summary>
        /// verificar se está conectado a internet
        /// </summary>
        /// <returns>true se existir uma conexão</returns>
        /// <remarks>retornar  true se destino está alcançável</remarks>
        public static bool IsConnectedToInternet(string _url)
        {
            int Desc;
            bool ret = InternetGetConnectedState(out Desc, 0);

            if (ret)
                ret = IsReachable(_url);

            return ret;
        }

        /// <summary>
        /// verificar se está conectado à internet
        /// </summary>
        /// <returns>true se existir uma conexão</returns>
        /// <remarks>retornar true não quer dizer que o destino esteja alcançável, 
        /// poderá passar uma url válida</remarks>
        public static bool IsConnectedToInternet()
        {
            int Desc;
            bool ret = InternetGetConnectedState(out Desc, 0);
            return ret;
        }

        /// <summary>
        /// verifica se o destino informado está alcançável. (Acessível)
        /// </summary>
        /// <param name="_url">endereço URL</param>
        /// <returns>true se estiver alcançável</returns>
        private static bool IsReachable(string _url)
        {
            System.Net.WebRequest webReq;
            System.Net.WebResponse resp;

            try
            {
                Uri Url = new Uri(_url);


                webReq = System.Net.WebRequest.Create(Url);
                resp = webReq.GetResponse();
                resp.Close();
                webReq = null;
                return true;
            }
            catch
            {
                webReq = null;
                return false;
            }
        }
    }
}