日期:2014-05-20 浏览次数:21123 次
[DllImport("wininet.dll")] private extern static bool InternetGetConnectedState(out int connectionDescription, int reservedValue); public bool IsInternetConnected() { int i = 0; return InternetGetConnectedState(out i, 0); }
------解决方案--------------------
AutoResetEvent waiter = new AutoResetEvent(false);
Ping myPing = new Ping();
myPing.PingCompleted += new PingCompletedEventHandler(myPing_PingCompleted);
string data = "OK";
byte[] buffer = Encoding.ASCII.GetBytes(data);
int timeout = 10000;
PingOptions options = new PingOptions(64, true);
myPing.SendAsync(_AppState.ServerName, timeout, buffer, options, waiter);
或
IPGlobalProperties properties = IPGlobalProperties.GetIPGlobalProperties();
TcpConnectionInformation[] connections = properties.GetActiveTcpConnections();
foreach (TcpConnectionInformation info in connections) {
if (info.RemoteEndPoint.Equals(targetEndPoint)) {
_AppState.OnlineStatus = Constant.ONLINE_STATUS_ONLINE;
isOnline = true;
break;
}
}
或
[DllImport("wininet.dll")]
private extern static bool InternetGetConnectedState(out int connectionDescription, int reservedValue);
System.Net.IPAddress[] addressList = Dns.GetHostByName(Dns.GetHostName()).AddressList;
for (int i = 0; i < addressList.Length; i ++)
{
s += addressList[i].ToString();
}
------解决方案--------------------
string st = "";
ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration");
ManagementObjectCollection moc = mc.GetInstances();
foreach (ManagementObject mo in moc)
{
if ((bool)mo["IPEnabled"] == true)
{
System.Array ar;
ar = (System.Array)(mo.Properties["IpAddress"].Value);
st = ar.GetValue(0).ToString();
break;
}
}
moc = null;
mc = null;
------解决方案--------------------
照顾楼主不认识VB.NET的语法,转换为C#
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Text.RegularExpressions; using System.Windows.Forms; using System.Net; namespace WindowsFormsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { WebClient wb = new WebClient(); String strIP = ""; String strContent = ""; Regex regIP = new Regex("\\d{1,3}.\\d{1,3}.\\d{1,3}.\\d{1,3}"); try { strContent = wb.DownloadString("http://www.ip138.com/ips8.asp"); if (strContent.IndexOf("IP地址查询") >= 1) { textBox1.Text = "爽,可以上网!"; strIP = regIP.Match(strContent).ToString(); if (strIP.Trim() != "") { textBox2.Text = "俺的IP是:" + strIP; } else { textBox2.Text = "虽然俺上网了,但是俺是黑户,没IP!"; } } } catch { textBox1.Text = "真不爽,不能上网,我去炸了电信!"; textBox2.Text = "不能上网,没IP!"; } } } }