#region 检查网络连接

        static bool exitResult = false;
        /// <summary>
        /// 检查网络连接
        /// add by wlzhang 2014年1月09日 21:33:40
        /// </summary>
        /// <returns>true为已连接,false为断开</returns>
        public static ResultMessage<bool, string> CheckInternetConnect()
        {
            ResultMessage<bool, string> result = new ResultMessage<bool, string>(false, "请检查网络状态...");
            Thread checkNetThread = new Thread(new ThreadStart(CheckNetState));
            checkNetThread.Start();
            checkNetThread.Join(5000);
            if (exitResult)
            {
                result = new ResultMessage<bool, string>(true, "");
            }
            return result;
        }
        /// <summary>
        /// 检查外网连接
        /// </summary>
        public static void CheckNetState()
        {
            if (IsConnected())
            {
                try
                {
                    Ping p = new Ping();
                    PingReply pr = p.Send("dev.voicecloud.cn");
                    if (pr.Status == IPStatus.Success)
                    {
                        exitResult = true;
                    }
                    else
                    {
                        exitResult = false;
                    }
                }
                catch (Exception e)
                {
                    e.GetBaseException();
                    exitResult = false;
                }
            }
            else
            {
                exitResult = false;
            }
        }

        [DllImport("wininet.dll")]
        private extern static bool InternetGetConnectedState(out int connectionDescription, int reservedValue);
        /// <summary>
        /// 检查内网连接
        /// </summary>
        /// <returns>true为已连接,false为断开</returns>
        private static bool IsConnected()
        {
            int I = 0;
            bool state = InternetGetConnectedState(out I, 0);
            return state;
        }

        #endregion
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Manage
{
    public class ResultMessage<T1, T2>
    {
        private T1 _t1;

        private T2 _t2;

        public T1 Result
        {
            get
            {
                return _t1;
            }
            set
            {
                _t1 = value;
            }
        }

        public T2 Message
        {
            get
            {
                return _t2;
            }
            set
            {
                _t2 = value;
            }
        }

        public ResultMessage(T1 result, T2 message)
        {
            _t1 = result;
            _t2 = message;
        }
    }
}

c# 网络验证的更多相关文章

  1. python3+django2 开发易语言网络验证(上)

    创作背景: 在某论坛中下载到一套php开发易语言网络验证的教程,照着看下来,花了两天的时间,结果发现教程里开发的网络验证,以及随着教程一起给学员的源码,都存在着根本用不了的bug!我想要看看能不能在原 ...

  2. python3+django2 开发易语言网络验证(中)

    第四步:网络验证的逻辑开发 1.将model注册到adminx.py中 1.在apps/yanzheng目录下新建admin.py 文件,添加代码: import xadmin from xadmin ...

  3. python3+django2 开发易语言网络验证(下)

    第六步:网络验证服务器端项目上线部署 功夫不负有心人,终于部署成功啦! 前期准备: 项目名:netauth 系统:百度云服务器下的Ubuntu16.4 软件:xshell(无论如何想办法用这个跟服务器 ...

  4. 用http.get()简单实现网络验证防止客户不给尾款_电脑计算机编程入门教程自学

    首发于:用http.get()简单实现网络验证防止客户不给尾款_电脑计算机编程入门教程自学 http://jianma123.com/viewthread.aardio?threadid=428 给软 ...

  5. 绕过010Editor网络验证(用python做一个仿真http server真容易,就几行代码)

    010Editor是一款非常强大的十六进制编辑器,尤其是它的模板功能在分析文件格式时相当好用!网上现在也有不少010Editor的破解版,如果没钱或者舍不得花钱买授权的话,去官方下载安装包再使用注册机 ...

  6. 【转】Fuel 9.0安装Openstack网络验证失败解决

    原文链接:https://blog.csdn.net/wiborgite/article/details/52983575 故障现象: 网络验证失败,报错信息如下: Repo availability ...

  7. Nexus 7 跳过网络验证

     本文从著名安卓论坛 xda-developers 搬运而来,原文链接 http://forum.xda-developers.com/showthread.php?t=1909602 由于众所周知的 ...

  8. android loginDemo +WebService用户登录验证

        android loginDemo +WebService用户登录验证 本文是基于android4.0下的loginActivity Demo和android下的Webservice实现的.l ...

  9. Windows Cluster 添加新节点--验证报错

    今天给既有Windows Cluster 添加节点时,验证总是不通过.报错信息为 防火墙未正确配置为故障转移群集.现将处理步骤汇总如下. 1.错误具体信息 报错的位置 --[验证警告] 的步骤中发现错 ...

随机推荐

  1. flask 即插视图(Pluggable Views)和endpoint

    endpoint经常使用flask的人肯定不会面生.其实我一直没有关注过他是怎么寻址的,直到最近经常食用url_for这个函数才引起了我的注意. url_for看源码感觉实现挺复杂的,我们姑且不在这里 ...

  2. linux中tomcat修改错误日志路径

    涉及文件 log4j.properties   (一般开发将该文件放在项目的缺省目录即源包下,在文件系统里,就是在项目的/src/java目录下,缺省的文件名是log4j.properties,这样项 ...

  3. loadrunner报错

    Action.c(1516): Error -27727: Step download timeout (120 seconds) has expired when downloading resou ...

  4. html 统一资源定位器(url)和url编码

    url,即统一资源定位器,也叫网址. 点击<a>标签就会连接到url指定的服务器web资源,文档或者其它数据: url的命名规则:url可是域名或者IP地址 url="shcem ...

  5. MySQL在Read Uncommitted级别下写操作加X锁

    很多文章认为MySQL在读未提交(Read Uncommitted)的隔离级别下,写操作是不加锁的,然而实际上并不是,在RU级别下,写操作加有X锁. 实践出真知 以前,我也认为RU隔离级别下,写操作不 ...

  6. 使用nexus搭建maven私服教程详解

    私服是什么 私服,私有服务器,是公司内部Maven项目经常需要的东东,不总结一下,不足以体现出重视.Nexus是常用的私用Maven服务器,一般是公司内部使用.下载地址是http://www.sona ...

  7. Luogu4512 【模板】多项式除法(多项式求逆+NTT)

    http://blog.miskcoo.com/2015/05/polynomial-division 好神啊! 通过翻转多项式消除余数的影响,主要原理是商只与次数不小于m的项有关. #include ...

  8. 在finally块中使用try catch,并且catch的时候抛出异常的一个问题

    在finally中使用try/catch,并且catch的时候抛出异常 IDEA会提示警告 Reports throw statements inside of finally blocks. Whi ...

  9. 【BZOJ4903】【UOJ#300】吉夫特(卢卡斯定理,动态规划)

    [BZOJ4903][UOJ#300]吉夫特(卢卡斯定理,动态规划) 题面 UOJ BZOJ:给的UOJ的链接...... 题解 首先模的质数更小了,直接给定了\(2\).当然是卢卡斯定理了啊. 考虑 ...

  10. 【BZOJ1799】[AHOI2009]同类分布(动态规划)

    [BZOJ1799][AHOI2009]同类分布(动态规划) 题面 BZOJ 洛谷 题解 很容易想到数位\(dp\),然而数字和整除原数似乎不好记录.没关系,直接枚举数字和就好了,这样子就可以把整除原 ...