Пример #1
0
        protected bool VerifyConnectionState()
        {
            try
            {
                foreach (WlanClient.WlanInterface wlanInterface in client.Interfaces)
                {
                    try
                    {
                        Wlan.WlanConnectionAttributes connAtributes = wlanInterface.CurrentConnection;

                        if (connAtributes.profileName.Equals(networkName))
                        {
                            return(true);
                        }
                    }
                    catch (Win32Exception ex)
                    {
                        Logger.Write(ex);

                        return(false);
                    }
                }
            }
            catch (Exception ex)
            {
                Logger.Write(ex);

                return(false);
            }

            return(false);
        }
Пример #2
0
 private void wlanInterfaceTmp_WlanConnectionNotification(Wlan.WlanNotificationData notifyData, Wlan.WlanConnectionNotificationData connNotifyData)
 {
     if (connNotifyData.profileName != "")
     {
         WlanClient wlanClientTmp = new WlanClient();
         WlanClient.WlanInterface wlanInterfaceTmp = wlanClientTmp.Interfaces[0];
         Dispatcher.Invoke(() =>
         {
             List <Object> dataList = GetAvailableNetworkList1();
             if (dataList == null)
             {
                 return;
             }
             dataGridWlan1.ItemsSource = dataList;
             if (wlanInterfaceTmp.IsWlanConnection())
             {
                 Wlan.WlanConnectionAttributes wlanAttr = wlanInterfaceTmp.CurrentConnection;
                 if (wlanAttr.isState == Wlan.WlanInterfaceState.Connected)
                 {
                     string macAddress = GetMacAddress(wlanAttr.wlanAssociationAttributes.dot11Bssid);
                     tbState.Text      = String.Format("当前设备已连接到Wlan: {0}, Mac地址: {1} IPv4地址: {2}", wlanAttr.profileName, macAddress, PathUtil.GetIPv4());
                 }
             }
         });
     }
 }
 private void GetNetwork()
 {
     Wlan.WlanConnectionAttributes wlanAttr = WlanClient.GetWlanConnectInfo();
     if (wlanAttr.profileName != null)
     {
         ImageWlan.Source = new BitmapImage(new Uri("Resources/Images/wifi.png", UriKind.RelativeOrAbsolute));
         _isWlan          = true;
     }
     else
     {
         ImageWlan.Source = new BitmapImage(new Uri("Resources/Images/wifi2.png", UriKind.RelativeOrAbsolute));
     }
 }
Пример #4
0
        /// <summary>
        /// This method will try to connect to the predefined network.
        /// </summary>
        public override void Perform()
        {
            string command = "netsh wlan connect name=\"" + networkName + "\"";

            try
            {
                bool response = ChangeConnectivityMode(command);

                if (response == false)
                {
                    return;
                }

                bool found = false;
                foreach (WlanClient.WlanInterface wlanInterface in client.Interfaces)
                {
                    try
                    {
                        Wlan.WlanConnectionAttributes connAtributes = wlanInterface.CurrentConnection;

                        if (connAtributes.profileName.Equals(networkName) && connAtributes.isState == Wlan.WlanInterfaceState.Connected)
                        {
                            found = true;
                        }
                    }
                    catch (Win32Exception ex)
                    {
                        ErrorLog.AddError(ErrorType.Failure, Strings.WiFi_CantConnectToNetwork);
                        Logger.Write(ex);

                        return;
                    }
                }

                if (found == false)
                {
                    ErrorLog.AddError(ErrorType.Failure, Strings.WiFi_CantConnectToNetwork);
                }
                else
                {
                    ErrorLog.AddError(ErrorType.Message, string.Format(Strings.WiFi_SuccessConnectedNetwork, networkName));
                }
            }
            catch (Exception ex)
            {
                ErrorLog.AddError(ErrorType.Failure, Strings.WiFi_CantConnectToNetwork);
                Logger.Write(ex);
            }
        }
Пример #5
0
        public static Wlan.WlanConnectionAttributes GetWlanConnectInfo()
        {
            WlanClient wlanClientTmp = new WlanClient();

            WlanClient.WlanInterface wlanInterfaceTmp = wlanClientTmp.Interfaces[0];
            if (wlanInterfaceTmp.IsWlanConnection())
            {
                Wlan.WlanConnectionAttributes wlanAttr = wlanInterfaceTmp.CurrentConnection;
                if (wlanAttr.isState == Wlan.WlanInterfaceState.Connected)
                {
                    //string macAddress = GetMacAddress(wlanAttr.wlanAssociationAttributes.dot11Bssid);
                    //tbState.Text = String.Format("当前设备已连接到Wlan: {0}, Mac地址: {1} IPv4地址: {2}", wlanAttr.profileName, macAddress, PathUtil.GetIPv4());
                    return(wlanAttr);
                }
            }
            return(new Wlan.WlanConnectionAttributes());
        }
Пример #6
0
        private void MySettingPage_Loaded(object sender, RoutedEventArgs e)
        {
            List <Object> dataList = GetAvailableNetworkList1();

            dataGridWlan1.ItemsSource = dataList != null?GetAvailableNetworkList1() : null;

            dataGridWlan2.ItemsSource = GetAvailableNetworkList2();
            string ipv4 = PathUtil.GetIPv4();

            Wlan.WlanConnectionAttributes wlanAttr = WlanClient.GetWlanConnectInfo();
            if (wlanAttr.profileName != null)
            {
                string macAddress = GetMacAddress(wlanAttr.wlanAssociationAttributes.dot11Bssid);
                tbState.Text = String.Format("当前设备已连接到Wlan: {0}, Mac地址: {1} IPv4地址: {2}", wlanAttr.profileName, macAddress, PathUtil.GetIPv4());
            }
            else
            {
                tbState.Text = string.Format("网络数据连接IPv4: {0}", PathUtil.GetIPV4ByManagementClass());
            }

            InitializeEmailConfiguration();
        }
Пример #7
0
        public WifiNetwork GetChannel(Wlan.WlanConnectionAttributes currentConnection)
        {
            var bssId = Encoding.ASCII.GetString(currentConnection.wlanAssociationAttributes.dot11Bssid);

            return(Channels.FirstOrDefault(c => string.Compare(Encoding.ASCII.GetString(c.BssId), bssId) == 0));
        }