1
0

NTKeyword.cs 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202
  1. using System.Linq;
  2. namespace NTMiner {
  3. public static class NTKeyword {
  4. public const double DoubleK = 1024;
  5. public const int IntK = 1024;
  6. public const double DoubleM = 1024 * 1024;
  7. public const int IntM = 1024 * 1024;
  8. public const double DoubleG = 1024 * 1024 * 1024;
  9. public const ulong ULongG = 1024 * 1024 * 1024;
  10. public const long LongG = 1024 * 1024 * 1024;
  11. public const string Version = "2.8.6";
  12. private const string _build = "4";
  13. public const string VersionBuild = Version + "." + _build;
  14. public const string ManJiTag = "蛮吉";
  15. public const string ManXiaoManTag = "蛮小满";
  16. public const string WoLiuDao = "涡流岛";
  17. public const string Copyright = "Copyright © NTMiner";
  18. public const string Company = "开源矿工 https://github.com/ntminer/NtMiner";
  19. public const string OfficialServerAddress = "server.ntminer.top:3339";
  20. public const string CloudFileDomain = "oss-cn-beijing.aliyuncs.com";
  21. public const string TempDirName = "NTMiner";
  22. public const string RootLockFileName = "home.lock";
  23. public const string RootConfigFileName = "home.config";
  24. public const string LogsDirName = "Logs";
  25. public const string WebSocketSharpLogFileNameFormat = "websocket-sharp-{0}.log";
  26. public const string WebSocketSharpLogFileName = "websocket-sharp.log";
  27. public const string ServerJsonFileName = "server.json";
  28. public const string LocalJsonFileName = "local.json";
  29. public const string GpuProfilesFileName = "gpuProfiles.json";
  30. public const string PackagesDirName = "Packages";
  31. public const string UpdaterDirName = "Updater";
  32. public const string SelfWorkDirName = "SelfWork";
  33. public const string MineWorkDirName = "MineWork";
  34. public const string NTMinerUpdaterFileName = "NTMinerUpdater.exe";
  35. public const string ServerDbFileName = "server.litedb";
  36. public const string LocalDbFileName = "local.litedb";
  37. public const string WpfDesignOnly = "这是供WPF设计时使用的构造,不应在业务代码中被调用";
  38. public const string Localhost = "localhost";
  39. #region AppMutex
  40. public const string MinerClientAppMutex = "ntminerclient";
  41. public const string MinerStudioAppMutex = "ntminercontrol";
  42. public const string MinerUpdaterAppMutex = "NTMinerUpdaterAppMutex";
  43. public const string MinerClientFinderAppMutex = "MinerClientFinderAppMutex";
  44. #endregion
  45. public const string NTMinerUpdaterProcessName = "NTMinerUpdater";
  46. public const string MinerClientFinderProcessName = "MinerClientFinder";
  47. public const string HomeDirParameterName = "{家目录}";
  48. public const string TempDirParameterName = "{临时目录}";
  49. // MinerClientPort和NTMinerDaemonPort因为需要被内网群控访问所以需要约定固定的端口号
  50. public const int MinerClientPort = 3336;
  51. public const int NTMinerDaemonPort = 3337;
  52. public const int MinerStudioPort = 3338;
  53. public const string DNSServer0 = "119.29.29.29";
  54. public const string DNSServer1 = "223.5.5.5";
  55. public const string MinerClientFinderFileName = "MinerClientFinder.exe";
  56. public const string AtikmdagPatcherFileName = "AtikmdagPatcher.exe";
  57. public const string SwitchRadeonGpuFileName = "SwitchRadeonGpu.exe";
  58. public const string DevConsoleFileName = "DevConsole.exe";
  59. public const string NTMinerDaemonFileName = "NTMinerDaemon.exe";
  60. public const string NTMinerNoDevFeeFileName = "NTMinerNoDevFee.exe";
  61. public const string NTMinerNoDevFeeKey = "NTMiner.NoDevFee.NTMinerNoDevFee.exe";
  62. public const string NTMinerDaemonKey = "NTMiner.Daemon.NTMinerDaemon.exe";
  63. public const string MinerStudioCmdParameterName = "--minerstudio";
  64. public const string AutoStartCmdParameterName = "--AutoStart";
  65. public const string UpgradeCmdParameterName = "upgrade=";
  66. public const string ActionCmdParameterName = "action=";
  67. public const int LocalMessageSetCapacity = 1000;
  68. public const int ServerMessageSetCapacity = 1000;
  69. // 矿工名中不可以包含的字符
  70. private static readonly char[] _invalidMinerNameChars = { '.', ' ', '-', '_' };
  71. public static string GetSafeMinerName(string rawMinerName) {
  72. if (string.IsNullOrEmpty(rawMinerName)) {
  73. return "temp";
  74. }
  75. return new string(rawMinerName.ToCharArray().Where(a => !_invalidMinerNameChars.Contains(a)).ToArray());
  76. }
  77. // 因为界面上输入框不好体现输入的空格,所以这里对空格进行转义
  78. public const string SpaceKeyword = "space";
  79. // 如果没有使用分隔符分割序号的话无法表达两位数的序号,此时这种情况基本都是用ABCDEFGH……表达的后续的两位数
  80. private static readonly string[] IndexChars = new string[] { "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n" };
  81. public static string GetIndexChar(int index, string separator) {
  82. if (index <= 9 || !string.IsNullOrEmpty(separator)) {
  83. return index.ToString();
  84. }
  85. return IndexChars[index - 10];
  86. }
  87. #region 目录名
  88. public const string DaemonDirName = "Daemon";
  89. public const string NoDevFeeDirName = "NoDevFee";
  90. public const string CoinIconsDirName = "CoinIcons";
  91. public const string DownloadDirName = "Download";
  92. public const string KernelsDirName = "Kernels";
  93. public const string ToolsDirName = "Tools";
  94. #endregion
  95. #region 注册表
  96. public const string ClientIdRegistryKey = "ClientId";
  97. public const string NoDevFeeVersionRegistryKey = "NoDevFeeVersion";
  98. public const string IsOuterUserEnabledRegistryKey = "IsOuterUserEnabled";
  99. public const string OuterUserIdRegistryKey = "OuterUserId";
  100. public const string DaemonVersionRegistryKey = "DaemonVersion";
  101. public const string LoginNameRegistryKey = "LoginName";
  102. public const string CurrentVersionTagRegistryKey = "CurrentVersionTag";
  103. public const string CurrentVersionRegistryKey = "CurrentVersion";
  104. public const string ArgumentsRegistryKey = "Arguments";
  105. public const string WorkTypeRegistryKey = "WorkType";
  106. public const string LocationRegistryKey = "Location";
  107. #endregion
  108. #region LocalAppSettingKey
  109. public const string UseDevicesAppSettingKey = "UseDevices";
  110. public const string UpdaterVersionAppSettingKey = "UpdaterVersion";
  111. public const string MinerClientFinderVersionAppSettingKey = "MinerClientFinderVersion";
  112. public const string AtikmdagPatcherVersionAppSettingKey = "AtikmdagPatcherVersion";
  113. public const string SwitchRadeonGpuVersionAppSettingKey = "SwitchRadeonGpuVersion";
  114. public const string ServerJsonVersionAppSettingKey = "ServerJsonVersion";
  115. #endregion
  116. #region ServerAppSettingKey
  117. public const string ColumnsShowIdAppSettingKey = "ColumnsShowId";
  118. public const string IsEnableVirtualizationAppSettingKey = "IsEnableVirtualization";
  119. public const string FrozenColumnCountAppSettingKey = "FrozenColumnCount";
  120. public const string MaxTempAppSettingKey = "MaxTemp";
  121. public const string MinTempAppSettingKey = "MinTemp";
  122. public const string RejectPercentAppSettingKey = "RejectPercent";
  123. public const string NTMinerUpdaterFileNameAppSettingKey = "NTMinerUpdaterFileName";
  124. public const string MinerClientFinderFileNameAppSettingKey = " MinerClientFinderFileName";
  125. #endregion
  126. #region 系统字典编码
  127. public const string KernelBrandSysDicCode = "KernelBrand";
  128. public const string PoolBrandSysDicCode = "PoolBrand";
  129. public const string AlgoSysDicCode = "Algo";
  130. public const string CudaVersionSysDicCode = "CudaVersion";
  131. public const string ThisSystemSysDicCode = "ThisSystem";
  132. public const string OsVmPerGpuSysDicItemCode = "OsVmPerGpu";
  133. #endregion
  134. #region 打在程序集中的定位关键字
  135. public const string KernelBrandId = "KernelBrandId";
  136. public const string PoolBrandId = "PoolBrandId";
  137. #endregion
  138. #region 正则表达式组名
  139. public const string TotalSpeedGroupName = "totalSpeed";
  140. public const string TotalSpeedUnitGroupName = "totalSpeedUnit";
  141. public const string TotalShareGroupName = "totalShare";
  142. public const string AcceptShareGroupName = "acceptShare";
  143. public const string RejectShareGroupName = "rejectShare";
  144. public const string IncorrectShareGroupName = "incorrectShare";
  145. public const string RejectPercentGroupName = "rejectPercent";
  146. public const string GpuIndexGroupName = "gpu";
  147. public const string GpuSpeedGroupName = "gpuSpeed";
  148. public const string GpuSpeedUnitGroupName = "gpuSpeedUnit";
  149. public const string PoolDelayGroupName = "poolDelay";
  150. #endregion
  151. public const string LogFileParameterName = "{logfile}";
  152. public const string MinerNameParameterName = "{{MinerName}}";
  153. #region 上下文变量名
  154. public const string MainCoinParameterName = "mainCoin";
  155. public const string UserNameParameterName = "userName";
  156. public const string PasswordParameterName = "password";
  157. public const string PasswordDefaultValue = "x";
  158. public const string WalletParameterName = "wallet";
  159. public const string HostParameterName = "host";
  160. public const string PortParameterName = "port";
  161. public const string PoolParameterName = "pool";
  162. public const string WorkerParameterName = "worker";
  163. public const string Worker1ParameterName = "worker1";
  164. public const string Host1ParameterName = "host1";
  165. public const string Port1ParameterName = "port1";
  166. public const string Pool1ParameterName = "pool1";
  167. public const string UserName1ParameterName = "userName1";
  168. public const string Password1ParameterName = "password1";
  169. public const string Wallet1ParameterName = "wallet1";
  170. public const string DualCoinParameterName = "dualCoin";
  171. public const string DualWalletParameterName = "dualWallet";
  172. public const string DualUserNameParameterName = "dualUserName";
  173. public const string DualPasswordParameterName = "dualPassword";
  174. public const string DualHostParameterName = "dualHost";
  175. public const string DualPortParameterName = "dualPort";
  176. public const string DualPoolParameterName = "dualPool";
  177. #endregion
  178. }
  179. }