public void CheckUpdate(long build) { Soft soft = null; try { text = "正在连接服务器..."; soft = NetApi.GetSoft(2); } catch (System.Net.WebException ex) { text = "获取数据时发生异常:" + ex.Message; } if (soft == null || soft.Build <= build) { text = "未找到相关数据"; overFlag = true; return; } text = "发现新版本!"; Tools.AppConfigHelper.RootPath = Application.ExecutablePath; Tools.AppConfigHelper.SetAppSettingsValue("UpdateFlag", "true"); Tools.AppConfigHelper.SetAppSettingsValue("Ver", soft.Version); Tools.AppConfigHelper.SetAppSettingsValue("UpdatePackageFileName", soft.Packages[0].Name); Tools.AppConfigHelper.SetAppSettingsValue("UpdatePackagePassword", soft.Packages[0].Password); String host = AppConfigHelper.GetAppSettingsValue("domain"); String url = String.Format("{0}/api/product/service/download_package/{1}?access_token=123", host, soft.Packages[0].Id); text = "正在下载更新包..."; DownloadFile(url, soft.Packages[0].Name + ".zip", null); }
public void CheckUpdate(long build) { String softID = ConfigurationManager.AppSettings["SoftID"]; IniFile file = new IniFile(String.Format("{0}/application.cache", Application.StartupPath)); Soft soft = null; try { Callback?.Invoke("正在连接服务器...", -1); soft = NetApi.GetSoft(Convert.ToInt32(softID), file.IniReadValue("AccessToken", "token")); } catch (System.Net.WebException ex) { Callback?.Invoke("获取数据时发生异常:" + ex.Message, 1); return; } if (soft == null || soft.Build <= build) { Callback?.Invoke("未发现新版本", 0); return; } Callback?.Invoke("发现新版本!", -1); Tools.AppConfigHelper.RootPath = Application.ExecutablePath; Tools.AppConfigHelper.SetAppSettingsValue("UpdateFlag", "true"); Tools.AppConfigHelper.SetAppSettingsValue("Ver", soft.Version); Tools.AppConfigHelper.SetAppSettingsValue("UpdatePackageFileName", soft.Packages[0].Name); Tools.AppConfigHelper.SetAppSettingsValue("UpdatePackagePassword", soft.Packages[0].Password); String host = AppConfigHelper.GetAppSettingsValue("domain"); String url = String.Format("{0}/api/product/download/{1}?access_token={2}", host, soft.Packages[0].Id, file.IniReadValue("AccessToken", "token")); Callback?.Invoke("正在下载更新包...", -1); DownloadFile(url, soft.Packages[0].Name + ".zip", null); }
/// <summary> /// 检测是否有新版本 /// </summary> /// <param name="build">当前版本</param> /// <returns>有新版本则返回软件信息,无新版本时则返回null</returns> public Soft checkUpdate(long build) { String softID = ConfigurationManager.AppSettings["SoftID"]; IniFile file = new IniFile(String.Format("{0}/application.cache", Application.StartupPath)); Soft soft = null; try { UpdateStatusCallback?.Invoke("正在连接服务器...", -1); soft = NetApi.GetSoft(Convert.ToInt32(softID), file.IniReadValue("AccessToken", "token")); } catch (System.Net.WebException ex) { UpdateStatusCallback?.Invoke("获取数据时发生异常:" + ex.Message, 1); return(null); } if (soft == null || soft.Build <= build) { UpdateStatusCallback?.Invoke("未发现新版本", 0); return(null); } UpdateStatusCallback?.Invoke("发现新版本!", -1); return(soft); }
internal static string getDomainName() { IntPtr zero = IntPtr.Zero; NetApi.DsGetDcName(null, null, null, null, 0, out zero); NetApi.DOMAIN_CONTROLLER_INFO domain_controller_info = (NetApi.DOMAIN_CONTROLLER_INFO)Marshal.PtrToStructure(zero, typeof(NetApi.DOMAIN_CONTROLLER_INFO)); NetApi.NetApiBufferFree(zero); zero = IntPtr.Zero; return(domain_controller_info.DomainName); }
public static String[] GetAccessToken(String appId, String appSecret) { NetResult result = NetApi.GetAccessToken(appId, appSecret); if (result == null || result.Status == "err") { return(null); } JObject item = result.Data as JObject; return(new String[] { item["access_token"].ToString(), item["access_expired"].ToString() }); }
/// <summary> /// Retrieves entropy from sources which are relatively slower than those from /// the FastAddEntropy function. /// </summary> public byte[] GetSlowEntropy() { List <byte> result = new List <byte>(); //NetAPI statistics byte[] netApiStats = NetApi.NetStatisticsGet(null, NetApiService.Workstation, 0, 0); if (netApiStats != null) { result.AddRange(netApiStats); } foreach (VolumeInfo info in VolumeInfo.Volumes) { if (info.IsReady && info.VolumeType != DriveType.Removable) { try { DiskPerformanceInfo performance = info.Performance; if (performance == null) { continue; } result.AddRange(StructToBuffer(performance.BytesRead)); result.AddRange(StructToBuffer(performance.BytesWritten)); result.AddRange(StructToBuffer(performance.IdleTime)); result.AddRange(StructToBuffer(performance.QueryTime)); result.AddRange(StructToBuffer(performance.QueueDepth)); result.AddRange(StructToBuffer(performance.ReadCount)); result.AddRange(StructToBuffer(performance.ReadTime)); result.AddRange(StructToBuffer(performance.SplitCount)); result.AddRange(StructToBuffer(performance.WriteCount)); result.AddRange(StructToBuffer(performance.WriteTime)); } catch (FileNotFoundException) { //This happens if a drive is ejected while the loop is running. } catch (NotSupportedException) { //Don't bother if this drive doesn't count statistics. } } } return(result.ToArray()); }