Advertisement
Guest User

Untitled

a guest
Aug 22nd, 2019
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.31 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Net.Http;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. using OpenHardwareMonitor.Hardware;
  8.  
  9. namespace Get_CPU_Temp5
  10. {
  11. class ApiModel
  12. {
  13. public double NewValue { get; set; }
  14. }
  15.  
  16. class Program
  17. {
  18. public class UpdateVisitor : IVisitor
  19. {
  20. public void VisitComputer(IComputer computer)
  21. {
  22. computer.Traverse(this);
  23. }
  24. public void VisitHardware(IHardware hardware)
  25. {
  26. hardware.Update();
  27. foreach (IHardware subHardware in hardware.SubHardware) subHardware.Accept(this);
  28. }
  29. public void VisitSensor(ISensor sensor) { }
  30. public void VisitParameter(IParameter parameter) { }
  31. }
  32.  
  33. static async Task GetSystemInfo()
  34. {
  35. UpdateVisitor updateVisitor = new UpdateVisitor();
  36. Computer computer = new Computer();
  37. computer.Open();
  38. computer.CPUEnabled = true;
  39. computer.Accept(updateVisitor);
  40.  
  41. for (int i = 0; i < computer.Hardware.Length; i++)
  42. {
  43. if (computer.Hardware[i].HardwareType == HardwareType.CPU)
  44. {
  45. for (int j = 0; j < computer.Hardware[i].Sensors.Length; j++)
  46. {
  47. if (computer.Hardware[i].Sensors[j].SensorType == SensorType.Temperature && computer.Hardware[i].Sensors[j].Value.HasValue)
  48. {
  49. Console.WriteLine(computer.Hardware[i].Sensors[j].Name + ":" + computer.Hardware[i].Sensors[j].Value.ToString() + "C" + "\r");
  50. var model = new ApiModel { NewValue = computer.Hardware[i].Sensors[j].Value.Value};
  51. using (var client = new HttpClient())
  52. {
  53. var content = new StringContent(Newtonsoft.Json.JsonConvert.SerializeObject(model));
  54. await client.PostAsync("https://apktest.azurewebsites.net/api/temperature", content);
  55. }
  56. }
  57. }
  58. }
  59. }
  60. computer.Close();
  61. }
  62.  
  63. static void GetSystemInfoHDD()
  64. {
  65. UpdateVisitor updateVisitor = new UpdateVisitor();
  66. Computer comp = new Computer();
  67. {
  68. comp.HDDEnabled = true;
  69. }
  70. comp.Open();
  71.  
  72. foreach (var hardware in comp.Hardware)
  73. {
  74. if (hardware.HardwareType == HardwareType.HDD)
  75. {
  76. hardware.Update();
  77. foreach (var sensor in hardware.Sensors)
  78. if (sensor.SensorType == SensorType.Temperature)
  79. Console.WriteLine("Temperatura dysku:" + sensor.Value.GetValueOrDefault());
  80. }
  81. }
  82. comp.Close();
  83. }
  84.  
  85.  
  86. static void Main(string[] args)
  87. {
  88. while (true)
  89. {
  90. GetSystemInfo().Wait();
  91. Console.WriteLine("\r");
  92. GetSystemInfoHDD();
  93. }
  94. }
  95. }
  96. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement