Check Your Internet Connection With C#
By Simohamed Attahri
用C#检测你的网络连接
How to check if your computer is connected to the internet with C#. It's much more easier that other tutorials I've seen in other sites. In deed, we're going to use a simple API function InternetGetConnectedState, to return a boolean variable.
怎么用C#来检测你的计算机是否连接到互联网呢?这可能是我见过最简单的教程了。其实我们就是使用一个简单的InternetGetConnectedState API函数,结果是返回一个boolean类型的变量。
This function takes two arguments :
这个函数有两个参数:
The first one is an integer used with out keyword, that means that after calling the function, the variable will contain an interger that describes the connection state ( use of a modem, use of a proxy, offline mode...). Note that you must refer to www.msdn.com for more information about that.
The second one is a reserved variable that must be set to 0.
第一个是带有out关键字的整型数,也就是说在调用函数后,变量应该包含一个描述连接状态(使用调制解调器、使用代理、离线模式)的整型数。你可以到www.msdn.com获取更多相关信息。
第二个参数设置为零的保留变量。
In this tutorial, we'll create a class with a static function that returns true if connected and false if not, using our API function in private state.
在这篇教程中,我们建立一个有着静态函数的类,在私有域使用API函数。如果连通则返回true否则返回false。
Check this out :
using System ;
using System.Runtime ;
using System.Runtime.InteropServices ;
public class InternetCS
{
//Creating the extern function...
[DllImport("wininet.dll")]
private extern static bool InternetGetConnectedState( int out Description, int ReservedValue ) ;
//Creating a function that uses the API function...
public static bool IsConnectedToInternet( )
{
int Desc ;
return InternetGetConnectedState( out Desc, 0 ) ;
}
}
本文地址:http://com.8s8s.com/it/it42037.htm