public TData <ComputerInfo> GetServerStatus() { var obj = new TData <ComputerInfo>(); var computerInfo = ComputerHelper.GetComputerInfo(); obj.Data = computerInfo; obj.Tag = 1; return(obj); }
public void TestGetComputerInfo() { ComputerInfo computerInfo = ComputerHelper.GetComputerInfo(); Assert.IsNotEmpty(computerInfo.CPURate); Assert.IsNotEmpty(computerInfo.RAMRate); Assert.IsNotEmpty(computerInfo.TotalRAM); Assert.IsNotEmpty(computerInfo.RunTime); }
private void DoWork(object state) { //执行任务 ServerStateEntity entity = new ServerStateEntity(); var computer = ComputerHelper.GetComputerInfo(); entity.F_ARM = computer.RAMRate; entity.F_CPU = computer.CPURate; entity.F_IIS = "0"; entity.F_WebSite = _hostingEnvironment.ContentRootPath; new ServerStateService(_context).SubmitForm(entity).GetAwaiter().GetResult(); }
/// <summary> /// Create a new instance of Emulator Controller for controlling emulator actions /// </summary> public EmulatorController(ILog logging, Panel docker = null, string arguments = null, string profileName = "Bot", [CallerLineNumber] int lineNumber = 0, [CallerMemberName] string caller = null) { if (!Directory.Exists("Emulators")) { Directory.CreateDirectory("Emulators"); throw new FileNotFoundException("No emulator dll is found! Please download the emulator's dll or create one before using this script!"); } bool Found = false; foreach (var dll in Directory.GetFiles("Emulators", "*.dll")) { try { var assembly = Assembly.LoadFrom(dll); foreach (var t in assembly.GetTypes()) { if (t.GetInterface("IEmulator") != null) { var type = Activator.CreateInstance(t) as IEmulator; if (type.CheckEmulatorExist(arguments, logger)) { emulator = type; Found = true; break; } } } if (Found) { break; } } catch { } } Config = Config.GetInstance(profileName); Config.ReadConfig(); logging.SetLogPath(Path.Combine(Config.ConfigPath, "Log") + "\\"); if (emulator == null || !Found) { //No installed emulator found throw new Exception("No installed emulator found!"); } this.docker = docker; logger = logging; logger.WritePrivateLog("Emulator Controller created", lineNumber, caller); if (ComputerHelper.getScalingFactor() != 1) { logger.WriteLog("Please set your scaling factor to 100% before using this program to ensure everything works well!", Color.Red); } }
public static void UpdateDisks() { LocalLogger.Log($"Method {nameof(UpdateDisks)} is running"); HubService.LogOnPage("Updating disks data"); var newDisks = ComputerHelper.GetDisks(); try { var db = JsonLocalDatabase.Instance; var computer = db.Computer; if (computer.Disks == null) { computer.Disks = newDisks; } foreach (var newDisk in newDisks) { var disk = computer.Disks.FirstOrDefault(d => d.Letter == newDisk.Letter); if (disk == null) { computer.Disks.Add(newDisk); } else { var diskChanged = disk.Name != newDisk.Name || Math.Abs(disk.TotalSpaceInGigaBytes - newDisk.TotalSpaceInGigaBytes) > 0.05 || Math.Abs(disk.FreeSpaceInGigaBytes - newDisk.FreeSpaceInGigaBytes) > 0.05; // Tolerance up to 50 MB. if (diskChanged) { disk.Name = newDisk.Name; disk.FreeSpaceInGigaBytes = newDisk.FreeSpaceInGigaBytes; disk.TotalSpaceInGigaBytes = newDisk.TotalSpaceInGigaBytes; disk.Synced = false; } } } var removedDisks = computer.Disks.Except(newDisks).ToList(); removedDisks.ForEach(rd => computer.Disks.Remove(rd)); if (removedDisks.Any() && computer.Disks.FirstOrDefault() != null) { computer.Disks.FirstOrDefault().Synced = false; } db.Computer = computer; } catch (Exception e) { LocalLogger.Log("UpdateDisks", e); } }
public async Task <ActionResult> GetServerDataJson() { //windows环境 var computer = ComputerHelper.GetComputerInfo(); var arm = computer.RAMRate; var cpu = computer.CPURate; var iis = computer.RunTime; var TotalRAM = computer.TotalRAM; string ip = WebHelper.GetWanIp(); string ipLocation = WebHelper.GetIpLocation(ip); var IP = string.Format("{0} ({1})", ip, ipLocation); return(Content(new { ARM = arm, CPU = cpu, IIS = iis, TotalRAM = TotalRAM, IP = IP }.ToJson())); }
public IActionResult GetServerJson() { TData <ComputerInfo> obj = new TData <ComputerInfo>(); ComputerInfo computerInfo = null; try { computerInfo = ComputerHelper.GetComputerInfo(); } catch (Exception ex) { LogHelper.WriteWithTime(ex); obj.Message = ex.Message; } obj.Data = computerInfo; obj.Tag = 1; return(Json(obj)); }
public ProcessListViewModel() { LoaderManager.Instance.Initialize(this); ComputerHelper.Initialize(); _processes = new ObservableCollection <SystemProcess>(); var pros = Process.GetProcesses(); foreach (var process in pros) { _processes.Add(new SystemProcess(process)); } _processThreads = new ObservableCollection <SystemProcessThread>(); _processModules = new ObservableCollection <SystemProcessModule>(); _tokenSource = new CancellationTokenSource(); _token = _tokenSource.Token; StartBackgroundTasks(); StationManager.StopThreads += StopBackgroundTasks; }
public IActionResult GetServerJson() { TData <ComputerInfo> obj = new TData <ComputerInfo>(); ComputerInfo computerInfo = null; try { computerInfo = ComputerHelper.GetComputerInfo(); computerInfo.RunTime = DateTimeHelper.FormatTime(Environment.TickCount); } catch (Exception ex) { LogHelper.WriteWithTime(ex); obj.Message = ex.Message; } obj.Result = computerInfo; obj.Tag = 1; return(Json(obj)); }
/// <summary> /// Initializes the <see cref="LogFolder"/>. /// </summary> private void InitializeAsync() { Task.Run(() => { _initialized = true; AppInfo.BaseAppInfo.Log.QueueLogMessageAsync($"Initializing log folder with path \"{Folder.FullName}\".", LogMessageType.Verbose); //Extract computer name from log folder path var chars = Folder.FullName.ToCharArray(); var startingIndex = 2; for (int i = startingIndex; i < Folder.FullName.Length; i++) { if (chars[i] == '\\') { ComputerName = Folder.FullName.Substring(startingIndex, i - startingIndex); break; } } //Get remote computer offset from local time try { RemoteComputerOffsetFromLocalTime = ComputerHelper.GetRemoteComputerOffsetFromLocalTime(ComputerName); } catch (Exception ex) { AppInfo.BaseAppInfo.Log.QueueLogMessageAsync($"Could not get remote computer \"{ComputerName}\"'s offset from local time. Error message: {ex.Message}", LogMessageType.Warning); } //Determine whether or not log folder exists Folder?.Refresh(); if (!Folder.Exists) { HasError = true; Notification = new Notification(this, $"Could not find log folder with path \"{Folder.FullName}\"."); AppInfo.BaseAppInfo.Log.QueueLogMessageAsync(Notification.Message, LogMessageType.Error); return; } LoadLogFilesAsync(); }); }
public async Task <AlwaysResult> Start() { AlwaysResult obj = new AlwaysResult(); try { ServerStateEntity entity = new ServerStateEntity(); var computer = ComputerHelper.GetComputerInfo(); entity.F_ARM = computer.RAMRate; entity.F_CPU = computer.CPURate; entity.F_IIS = "0"; entity.F_WebSite = _hostingEnvironment.ContentRootPath; await _server.SubmitForm(entity); obj.state = ResultType.success.ToString(); obj.message = "服务器状态更新成功!"; } catch (Exception ex) { obj.state = ResultType.error.ToString(); obj.message = "服务器状态更新失败!" + ex.Message; } return(obj); }
protected override ServiceListDataItem[] GetOutputData(DataItemBase[] inputDataItems) { try { string opMessages = ""; bool IsCluster = false; if (supportClusteredService) { IsCluster = ServiceHelper.IsCluster("."); } long computerUpTimeMin = 0; if (supportDelayedStart) { computerUpTimeMin = ComputerHelper.GetUptime(".") / 60; } // get all clustered services and their on-line statuses List <ClusteredServiceInfo> clusteredServices = new List <ClusteredServiceInfo>(); if (IsCluster) { try { using (WMIQuery query = new WMIQuery(new ManagementScope("\\\\.\\root\\MSCluster"), "SELECT * FROM MSCluster_Resource")) { foreach (ManagementBaseObject serviceData in query.Select()) { if (serviceData["Type"].ToString() != "Generic Service") { continue; } clusteredServices.Add(new ClusteredServiceInfo { nodeName = serviceData["OwnerNode"].ToString(), serviceDisplayName = serviceData["Name"].ToString(), serviceName = ((ManagementBaseObject)serviceData["PrivateProperties"])["ServiceName"].ToString(), Offline = (uint)serviceData["State"] == 3 }); serviceData.Dispose(); } } } catch (Exception cluster_e) { string msg = "Failed to query clustered services information."; ModuleErrorSignalReceiver(ModuleErrorSeverity.DataLoss, ModuleErrorCriticality.Continue, cluster_e, msg); opMessages += msg + "; "; } } // list all services List <ServiceInfo> allServices = new List <ServiceInfo>(); StringComparer ignoreCaseComparer = StringComparer.OrdinalIgnoreCase; foreach (ServiceController service in string.IsNullOrWhiteSpace(QueryService) ? ServiceController.GetServices() : new ServiceController[] { new ServiceController(QueryService) }) { try { ServiceInfo newInstance = new ServiceInfo() { IsClustered = clusteredServices.Exists(x => ignoreCaseComparer.Compare(x.serviceName, service.ServiceName) == 0), NodeName = ComputerHelper.GetMachineDNSName(), // default to local host DisplayName = service.DisplayName, Name = service.ServiceName, Status = service.Status.ToString(), Type = (int)service.ServiceType, }; FillServiceValuesFromRegistry(newInstance, service, QueryParameters); if (newInstance.IsClustered) { newInstance.NodeName = clusteredServices.Find(x => ignoreCaseComparer.Compare(x.serviceName, service.ServiceName) == 0).nodeName; newInstance.IsClusterOffline = clusteredServices.Find(x => ignoreCaseComparer.Compare(x.serviceName, service.ServiceName) == 0).Offline; } allServices.Add(newInstance); } catch (Exception e) { ModuleErrorSignalReceiver(ModuleErrorSeverity.DataLoss, ModuleErrorCriticality.Continue, e, $"Failure while reading service {service.DisplayName}. Skipping."); } finally { service.Dispose(); } } // query advanced dependency ServiceController[] allNativeServices = null; if (QueryParameters) { try { allNativeServices = ServiceController.GetServices(); foreach (ServiceInfo resultService in allServices) { ServiceController nativeServiceInstance = allNativeServices.Where(ns => ns.ServiceName == resultService.Name).FirstOrDefault(); if (nativeServiceInstance == null) { continue; // if the service was deleted right before the second query } if (nativeServiceInstance.ServicesDependedOn != null) { resultService.DependOn = new List <DependOnRecord>(); foreach (ServiceController dep_on in nativeServiceInstance.ServicesDependedOn) { resultService.DependOn.Add(GetDependOnRecord(dep_on)); } } if (nativeServiceInstance.DependentServices != null) { resultService.Dependant = new List <DependOnRecord>(); foreach (ServiceController dep in nativeServiceInstance.DependentServices) { resultService.Dependant.Add(GetDependantRecord(dep)); } } } } catch (Exception e) { ModuleErrorSignalReceiver(ModuleErrorSeverity.DataLoss, ModuleErrorCriticality.Continue, e, $"Failure while walking through service dependencies. Skipping."); } } finally { if (allNativeServices != null) { foreach (ServiceController ns in allNativeServices) { try { ns.Dispose(); } catch { } } } } return(new ServiceListDataItem[] { new ServiceListDataItem(new ServiceList { Services = allServices, ErrorCode = 0, ErrorMessage = opMessages }) }); }
private void InitializeAsync() { Task.Run(() => { AppInfo.BaseAppInfo.Log.QueueLogMessageAsync($"Initializing log file with network path \"{NetworkFile.FullName}\".", LogMessageType.Verbose); //Get file info attributes needed for displaying info if (NetworkFile.Exists) { LastWriteTime = NetworkFile.LastWriteTime; SizeInBytes = NetworkFile.Length; } else { LastWriteTime = DateTime.MinValue; SizeInBytes = -1; } //Extract computer name from log folder path var chars = NetworkFile.Directory.FullName.ToCharArray(); var startingIndex = 0; if (chars.Length > 2 && chars[0] == '\\' && chars[1] == '\\') { startingIndex = 2; for (int i = startingIndex; i < NetworkFile.Directory.FullName.Length; i++) { if (chars[i] == '\\') { ComputerName = NetworkFile.Directory.FullName.Substring(startingIndex, i - startingIndex); break; } } } else { ComputerName = Environment.MachineName; } //Get computer offset from local time try { ComputerOffsetFromLocalTime = ComputerHelper.GetRemoteComputerOffsetFromLocalTime(ComputerName); } catch (Exception ex) { AppInfo.BaseAppInfo.Log.QueueLogMessageAsync($"Could not get computer \"{ComputerName}\"'s offset from local time. Error message: {ex.Message}", LogMessageType.Warning); } //Initialize filesystem watcher if (_fileSystemWatcher == null && NetworkFile.Exists) { _fileSystemWatcher = new FileSystemWatcher(NetworkFile.Directory.FullName, NetworkFile.Name) { EnableRaisingEvents = true, }; _fileSystemWatcher.Changed += File_Changed; } AppInfo.BaseAppInfo.Log.QueueLogMessageAsync($"Log file with network path \"{NetworkFile.FullName}\" initialized.", LogMessageType.Verbose); }); }
private static int Main(string[] args) { try { try { CefRuntime.Load(); } catch (DllNotFoundException ex) { MessageBox.Show(ex.Message, "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); return(1); } catch (CefRuntimeException ex) { MessageBox.Show(ex.Message, "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); return(2); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); return(3); } var mainArgs = new CefMainArgs(args); var app = new CefApplication(); int exitCode = CefRuntime.ExecuteProcess(mainArgs, app); if (exitCode != -1) { return(exitCode); } var settings = new CefSettings { SingleProcess = false, MultiThreadedMessageLoop = true, LogSeverity = CefLogSeverity.Disable, LogFile = "CefGlue.log", }; CefRuntime.Initialize(mainArgs, settings, app); Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); if (!settings.MultiThreadedMessageLoop) { Application.Idle += (sender, e) => { CefRuntime.DoMessageLoopWork(); }; } InitDevExpress(); UpdateHelper.ForcedUpdate(); Application.ThreadException += Application_ThreadException; AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException; BaseSystemInfo.StartupPath = Application.StartupPath; BaseSystemInfo.CustomerCompanyName = "申通快递"; BaseSystemInfo.SoftFullName = "申通打印专家"; BaseSystemInfo.SoftName = BaseSystemInfo.SoftFullName; BaseSystemInfo.MailUserName = "******"; BaseSystemInfo.MailServer = "smtp.qq.com"; BaseSystemInfo.MailPassword = "******"; BaseSystemInfo.SystemCode = "ZTOPrint"; // ZipFile(); Synchronous.Synchronous.BeforeLogOn(); // new FrmWaiting().ShowDialog(); CheckPrinterWindowsServer(); CheckInitData(); var t = new Task(() => ComputerHelper.GetServerDataTime()); t.Start(); // Application.Run(new FrmLogOnByMobile()); Application.Run(new FrmMain()); return(0); } catch (Exception ex) { LogUtil.WriteException(ex); MessageBox.Show(ex.Message); } CefRuntime.Shutdown(); return(0); }
private async void btnSave_Click(object sender, RoutedEventArgs e) { Mouse.OverrideCursor = Cursors.Wait; try { if (Validate()) { //guardamos la informacion de contacto _guest.guloInfo = _userLoguedo.User.peID; _guest.guPRInfo = cboguPRInfo.SelectedValue.ToString(); _guest.guInfoD = Convert.ToDateTime(txtguInfoD.Text).Date; _guest.guInfo = true; //Enviamos los parametros para que guarde los cambios del guest y el log del Guest y de igual forma los moviemientos de este (SaveGuestMovement). //Si hubo un erro al ejecutar el metodo SaveGuestContact nos devolvera 0, indicando que ningun paso //se realizo, es decir ni se guardo el Guest, el Log ni los movimientos de este, siendo así ya no modificamos la variable //_wasSaved que es la que indica que se guardo el Avail. if (await BRGuests.SaveGuestContact(_guest, _userPrimero.LeadSource.lsHoursDif, _userLoguedo.User.peID, EnumGuestsMovementsType.Contact, Environment.MachineName, ComputerHelper.GetIpMachine()) != 0) { //Modificamos las variable indicando que si se guardo la variable _wasSave = true; chkguInfo.IsChecked = true; } else { UIHelper.ShowMessage("There was an error saving the information, consult your system administrator", MessageBoxImage.Error, "Information can not keep"); } Close(); } } catch (Exception ex) { UIHelper.ShowMessage(ex); } Mouse.OverrideCursor = null; }
//private static PerformanceCounter cpuCounter = new PerformanceCounter("Processor", "% Processor Time", "_Total"); #region 视图功能 public IActionResult ServerIndex() { ViewBag.TotalRAM = ComputerHelper.GetTotalMemory(); return(View()); }
static void Main(string[] args) { //using (var db = new Models.ArktinMonitorDataAccess()) //{ // var email = Console.ReadLine(); // var name = Console.ReadLine(); // if (!(db.WebAccounts.Any(a => a.Email == email))) // { // var webAccount = new Models.WebAccount() // { // Name = name, // Email = email // }; // db.WebAccounts.Add(webAccount); // db.SaveChanges(); // } // var computer = ComputerHelper.GetComputer(); // computer.WebAccountId = db.WebAccounts.FirstOrDefault(wa => wa.Email == email).WebAccountId; // db.Computers.Add(computer); // db.SaveChanges(); // foreach (var computerDisk in computer.Disks) // { // computerDisk.ComputerId = computer.ComputerId; // db.Disks.Add(computerDisk); // } // foreach (var computerUser in computer.ComputerUsers) // { // computerUser.ComputerId = computer.ComputerId; // db.ComputerUsers.Add(computerUser); // } // db.SaveChanges(); //} var serverClient = new ServerClient(); var comp = ComputerHelper.GetComputer().ToResourceModel(); comp.ComputerId = 0; try { Authorization.RenewBearerToken("*****@*****.**", "[REDACTED]"); var sc = serverClient.SendToServer("api/Computers", comp, Authorization.GetBearerToken.AccessToken); var response = sc.Result; //var content = response.Content.ReadAsAsync<ComputerResourceModel>().Result; LocalLogger.Log($"Status: {response.StatusCode}"); //Console.WriteLine(content.Dump()); } catch (Exception e) { LocalLogger.Log("Local", e); } //var computer2 = ComputerHelper.GetComputer(); //JsonHelper.SerializeToJsonFile(Path.Combine(Settings.LocalPath, "computer.json"), computer2); //LocalLogger.Log("test"); //LocalLogger.Log(computer2.Dump()); //Authorization.RenewBearerToken("*****@*****.**", "[REDACTED]"); //var token = Authorization.GetBearerToken; //Console.WriteLine(token.Dump()); //Console.WriteLine(token.Expires.ToLongDateString() + " " + token.Expires.ToLongTimeString()); Console.Read(); }
private static string[] GetCertificateBindings(X509Certificate2 cert) { List <string> result = new List <string>(); #region SCOM const string channelCertificateSerialNumber = @"HKLM\SOFTWARE\Microsoft\Microsoft Operations Manager\3.0\Machine Settings\ChannelCertificateSerialNumber"; if (RegistryHelper.RegistryValueExists(".", channelCertificateSerialNumber)) { byte[] certSN = (byte[])RegistryHelper.ReadRegistryValue(".", channelCertificateSerialNumber); Array.Reverse(certSN); string certSNStr = BitConverter.ToString(certSN).Replace("-", string.Empty); if (cert.SerialNumber.ToUpperInvariant() == certSNStr.ToUpperInvariant()) { result.Add("SCOM"); } } #endregion #region SCCM string currentCertThumbprint = null; DataTable clientIdentity; try { clientIdentity = ComputerHelper.GetQueryWMI(".", "SELECT * FROM CCM_ClientIdentificationInformation", "\\root\\ccm"); } catch { clientIdentity = null; } if (clientIdentity != null && clientIdentity.Rows.Count > 0) { currentCertThumbprint = clientIdentity.Rows[0]["ReservedString1"].ToString(); } if (currentCertThumbprint != null && currentCertThumbprint.ToUpperInvariant() == cert.Thumbprint.ToUpperInvariant()) { result.Add("SCCM"); } #endregion #region HTTP try { RegistryKey bindingsKey = RegistryHelper.GetRegistryKey(".", @"HKLM\SYSTEM\CurrentControlSet\Services\HTTP\Parameters\SslBindingInfo"); foreach (string subKeyName in bindingsKey.GetSubKeyNames()) { RegistryKey portBindingKey = bindingsKey.OpenSubKey(subKeyName, false); byte[] certHash = (byte[])portBindingKey.GetValue("SslCertHash"); string certHashStr = BitConverter.ToString(certHash).Replace("-", string.Empty); if (cert.Thumbprint.ToUpperInvariant() == certHashStr.ToUpperInvariant()) { result.Add("HTTP"); break; } } } catch { } #endregion return(result.ToArray()); }