判断PDA是否连接上网络,这个代码可以吗?哪个帮我实验一下,我用ActiveSync 连接的,这个判断可以吗?

.NET Compact Framework

判断PDA是否连接上网络,这个代码可以吗?哪个帮我实验一下,我用ActiveSync 连接的,这个判断可以吗?


木头人 2006-02-25, 10:51

判断PDA是否连接上网络,这个代码可以吗?哪个帮我实验一下,我用ActiveSync 连接的,这个判断可以吗?

       private enum ConnectionStateEnum
        {
            //Local system has a valid connection to the Internet, but it might or might not be currently connected.
            ConnectionConfigured = 64,
            //Local system uses a local area network to connect to the Internet.
            ConnectionLan = 2,
            //Local system uses a modem to connect to the Internet.
            ConnectionModem = 1,
            //No longer used.
            ConnectionModemBusy = 8,
            //Local system is in offline mode.
            ConnectionOffline = 32,
            //Local system uses a proxy server to connect to the Internet.
            ConnectionProxy = 4,
            //Local system has RAS installed.
            RasInstalled = 16

        }

        class Win32
        {
            [DllImport("Wininet.dll", CharSet = CharSet.Auto)]
            public static extern int InternetGetConnectedState(out int Flag, int Reserved);
        }

        private static int GetConnectionFlag()
        {
            int Flag;
            Win32.InternetGetConnectedState(out Flag, 0);
            return Flag;
        }

        public static bool IsModemConnected()
        {
            return ((GetConnectionFlag() & (int)ConnectionStateEnum.ConnectionModem) == 0) ?
            false : true;
        }

 

Re: 判断PDA是否连接上网络,这个代码可以吗?哪个帮我实验一下,我用ActiveSync 连接的,这个判断可以吗?


AIKDONG 2006-02-26, 13:59
这个好像不行,那时候我试验过,现在用的方法就是看IP是否是“127.0.0.1”

Re: 判断PDA是否连接上网络,这个代码可以吗?哪个帮我实验一下,我用ActiveSync 连接的,这个判断可以吗?


被遗弃的小指 2006-02-26, 18:50
赫赫。。。。。AikDong来了吖
欢迎欢迎。。。。。

Re: 判断PDA是否连接上网络,这个代码可以吗?哪个帮我实验一下,我用ActiveSync 连接的,这个判断可以吗?


木头人 2006-02-27, 8:10
akidong,这样做,我觉得好象。。。。
因为我要时刻判断是否连接到网络,我是不是要用个定时间
器?这样做恐怕。。。。总是很别扭,最好有个触发事件,他连接,没有连接,触发一下,我直接写个代码。。。

Re: 判断PDA是否连接上网络,这个代码可以吗?哪个帮我实验一下,我用ActiveSync 连接的,这个判断可以吗?


AIKDONG 2006-03-23, 20:03

好像是不行,最先那段代码在直接跟PC同步的时候是不起作用的吧,我记得试过一次。

应该是可以触发的,官方的MSN客户端不是带一个“连接到网络就运行”吗(但我的没效果)?好像是可以注册一个系统事件,如果有网络变化它会通知你。

Re: 判断PDA是否连接上网络,这个代码可以吗?哪个帮我实验一下,我用ActiveSync 连接的,这个判断可以吗?


AIKDONG 2006-03-23, 20:07

 被遗弃的小指 wrote:
赫赫。。。。。AikDong来了吖
欢迎欢迎。。。。。

哈哈,还得多多学习啊!

Re: 判断PDA是否连接上网络,这个代码可以吗?哪个帮我实验一下,我用ActiveSync 连接的,这个判断可以吗?


brucelee 2006-06-27, 10:09
楼主的方法是肯定不行的,我试验了好久,都是状态2,说是LAN连接,后来用了枚举网络连接方式勉强可以解决,但如果连接状态是连入网了,用winnet下载文件,如果上网没设定好,不能下载,程序就会不停的试图访问网页,给人的感觉好像程序死掉了,有什么办法可以判断网络状态是否连接,又可以判断是否可以进行internet访问,这样如果没连接网络程序就提示他设置网络连接,如果不能进行internet访问,就提示设置internet访问(比如设置代理等)。

Re: 判断PDA是否连接上网络,这个代码可以吗?哪个帮我实验一下,我用ActiveSync 连接的,这个判断可以吗?


ah 2007-11-20, 15:12
Part of the code used to check for network connectivity before enabeling the
WebService calls
// This code is in the ConnectivityTest class
public bool IsWebAccessible() {
HttpWebRequest hwrRequest;
HttpWebResponse hwrResponse;

string strUrl = @"http://www.microsoft.com/";
bool bConnected = false;

try{
hwrRequest = (HttpWebRequest)WebRequest.Create(strUrl);
hwrRequest.Timeout = 10;
hwrResponse = (HttpWebResponse)hwrRequest.GetResponse();

if(hwrResponse.StatusCode == HttpStatusCode.OK){
bConnected = true;
}
}catch(WebException we){
bConnected = false;
}catch(Exception ex){
bConnected = false;
}finally{
hwrRequest = null;
hwrResponse = null;
}

return bConnected;
}
Copy Left WinFans(R)

Powered by Community Server Powered by CnForums.Net