SystemRunTimeTools.cs 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. using MvvmScaffoldFrame48.DLL.ConfigTools;
  2. using MvvmScaffoldFrame48.Model.StorageModel.SystemTools;
  3. using System;
  4. using System.Diagnostics;
  5. using System.IO;
  6. namespace MvvmScaffoldFrame48.DLL.SystemTools
  7. {
  8. public static class SystemRunTimeTools
  9. {
  10. static Stopwatch SystemRunTime = new Stopwatch();
  11. static long InitRunTime;
  12. public static void StartSystemRunTime()
  13. {
  14. string localDataPath = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData);
  15. string systemRunTimePath = Path.Combine(localDataPath, "CCDCount\\SystemRunTime.XML");
  16. if (File.Exists(systemRunTimePath))
  17. {
  18. var systemMessage = XMLReadWrite.DeserializeFromXml<SystemMessageConfigModel>(systemRunTimePath);
  19. InitRunTime = systemMessage.SystemRunTime;
  20. TimeSpan timeSpan = TimeSpan.FromTicks(InitRunTime);
  21. }
  22. SystemRunTime.Start();
  23. }
  24. public static void StopSystemRunTime()
  25. {
  26. string localDataPath = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData);
  27. string systemruntimefoundPath = Path.Combine(localDataPath, "CCDCount");
  28. if (!Directory.Exists(systemruntimefoundPath))
  29. {
  30. Directory.CreateDirectory(systemruntimefoundPath);
  31. }
  32. string systemRunTimePath = Path.Combine(systemruntimefoundPath, "SystemRunTime.XML");
  33. SystemRunTime.Stop();
  34. long ticks = SystemRunTime.ElapsedTicks;
  35. XMLReadWrite.SerializeToXml(new SystemMessageConfigModel()
  36. {
  37. SystemRunTime = ticks + InitRunTime
  38. }, systemRunTimePath);
  39. }
  40. }
  41. }