我要做的是一个wince 上的wifi连接工具,采用的是OpenNETCF.Net库
通过下面的代码能够连上,而且ip也设置成功,但是过了大约10多秒钟之后wifi显示断开
ping也ping不通,这是为什么啊我的代码如下AccessPoint ap=xx(太过复杂省略获取过程) if (ap.Privacy != WEPStatus.WEPDisabled)
{ string password = AccessPointForm.StrToHex(tree.Password);//密码转换 EAPParameters eap = new EAPParameters();
eap.Enable8021x = false;
eap.AuthData = IntPtr.Zero;
eap.AuthDataLen = 0;
eap.EapType = EAPType.PEAP;
eap.EapFlags = EAPFlags.Enabled;
if (m_wzc.AddPreferredNetwork(ap.Name, true, password, 1, ap.AuthenticationMode, ap.Privacy, eap))//添加进预设网络列表中
{
if (m_wzc.ConnectToPreferredNetwork(ap.Name))//连接热点
{
//修改ip
m_wzc.GetIPProperties().GetIPv4Properties().IsDhcpEnabled = tree.DHCP;
m_wzc.CurrentIpAddress = System.Net.IPAddress.Parse(tree.IP);
m_wzc.CurrentSubnetMask = System.Net.IPAddress.Parse(tree.Sub);
m_wzc.GetIPProperties().GatewayAddresses.Add(System.Net.IPAddress.Parse(tree.Gate));
m_wzc.GetIPProperties().DnsAddresses.Add(System.Net.IPAddress.Parse(tree.DNS));
m_wzc.Bind();
}
}
}
通过下面的代码能够连上,而且ip也设置成功,但是过了大约10多秒钟之后wifi显示断开
ping也ping不通,这是为什么啊我的代码如下AccessPoint ap=xx(太过复杂省略获取过程) if (ap.Privacy != WEPStatus.WEPDisabled)
{ string password = AccessPointForm.StrToHex(tree.Password);//密码转换 EAPParameters eap = new EAPParameters();
eap.Enable8021x = false;
eap.AuthData = IntPtr.Zero;
eap.AuthDataLen = 0;
eap.EapType = EAPType.PEAP;
eap.EapFlags = EAPFlags.Enabled;
if (m_wzc.AddPreferredNetwork(ap.Name, true, password, 1, ap.AuthenticationMode, ap.Privacy, eap))//添加进预设网络列表中
{
if (m_wzc.ConnectToPreferredNetwork(ap.Name))//连接热点
{
//修改ip
m_wzc.GetIPProperties().GetIPv4Properties().IsDhcpEnabled = tree.DHCP;
m_wzc.CurrentIpAddress = System.Net.IPAddress.Parse(tree.IP);
m_wzc.CurrentSubnetMask = System.Net.IPAddress.Parse(tree.Sub);
m_wzc.GetIPProperties().GatewayAddresses.Add(System.Net.IPAddress.Parse(tree.Gate));
m_wzc.GetIPProperties().DnsAddresses.Add(System.Net.IPAddress.Parse(tree.DNS));
m_wzc.Bind();
}
}
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货