using System.Runtime.InteropServices; namespace IStation.Untity { /// /// 网络工具类 /// public class InternetHelper { private const int INTERNET_CONNECTION_MODEM = 1; private const int INTERNET_CONNECTION_LAN = 2; private const int INTERNET_CONNECTION_PROXY = 4; private const int INTERNET_CONNECTION_MODEM_BUSY = 8; ///导入判断网络是否连接的 .dll [DllImport("wininet.dll", EntryPoint = "InternetGetConnectedState")] /// /// 判断网络状况的方法,返回值true为连接,false为未连接 /// /// /// public extern static bool InternetGetConnectedState(out int conState, int reder); /*使用方法 var internetCode = 0; var hasInternet = InternetUtils.InternetGetConnectedState(out internetCode, 0); if (!hasInternet) { XtraMessageBox.Show("当前未连接网络!"); return; } */ //int dwFlag = 0; //string netstatus = ""; //if (!InternetGetConnectedState(ref dwFlag, 0)) //Console.WriteLine("未联网!"); //else //{ //if ((dwFlag & INTERNET_CONNECTION_MODEM) != 0) //netstatus += " 采用调治解调器上网 /n"; //if ((dwFlag & INTERNET_CONNECTION_LAN) != 0) //netstatus += " 采用网卡上网 /n"; //if ((dwFlag & INTERNET_CONNECTION_PROXY) != 0) //netstatus += " 采用代理上网 /n"; //if ((dwFlag & INTERNET_CONNECTION_MODEM_BUSY) != 0) //netstatus += " MODEM被其他非INTERNET连接占用 /n"; //} } }