using System; using System.Collections.Generic; using System.Net.NetworkInformation; using Vinno.FIS.Sonopost.Features.Network; namespace Vinno.FIS.Sonopost.Managers.Interfaces { internal interface INetworkManager : ISonopostManager { /// /// 当前显示的网络改变时触发 /// event EventHandler CurrentNetworkChanged; /// /// 当WIFI Level改变时触发 /// event EventHandler CurrentWifiLevelChanged; /// /// 当前选择的网络 /// NetworkInterfaceInfo CurrentNetwork { get; } /// /// 当前Wifi强度 /// int CurrentWifiLevel { get; } /// /// 设置网络 /// /// /// /// /// /// /// /// bool SetNetworkInfo(string macAddress, bool enableDhcp, string ip = "", string subnetMask = "", string gateway = "", string preferredDns = "", string standbyDns = ""); /// /// 刷新DNS /// bool FlushDns(); /// /// 重置Winsock /// bool ResetWinSock(); /// /// Ping ip /// /// /// IPStatus Ping(string address, int timeOut = 5000); /// /// 设置双网卡 /// /// /// bool SetDualNetwork(string outsideMacAddress); /// /// 保存双网卡设置 /// /// 外网网卡地址 /// SetDualNetworkResult SetDualNetworkEnable(string outsideMacAddress); /// /// 取消双网卡设置 /// /// SetDualNetworkResult SetDualNetworkDisable(); /// /// 所有网络列表 /// IList GetAllNetworkInterfaceInfos(); /// /// /// /// /// void OnNetworkAddressChanged(object sender, EventArgs e); /// /// 刷新网络 /// void RefreshAllNetworks(bool wifiScan); } }