Ejemplo n.º 1
0
 public static void UpdateFirewallRules()
 {
     try
     {
         var fileName  = Paths.AppRootPath("FirewallRules.exe");
         var startInfo = new ProcessStartInfo
         {
             FileName = fileName,
             //Arguments = $"{Directory.GetCurrentDirectory()} update miner_plugins",
             Arguments       = $"{Paths.Root} update miner_plugins",
             Verb            = "runas",
             UseShellExecute = true,
             CreateNoWindow  = true
         };
         startInfo.WindowStyle = ProcessWindowStyle.Hidden; // used for hidden window
         using (var setFirewallRulesProcess = new Process {
             StartInfo = startInfo
         })
         {
             setFirewallRulesProcess.Start();
             setFirewallRulesProcess?.WaitForExit(10 * 1000);
             if (setFirewallRulesProcess?.ExitCode != 0)
             {
                 Logger.Info("NICEHASH", "setFirewallRulesProcess returned error code: " + setFirewallRulesProcess.ExitCode);
             }
             else
             {
                 Logger.Info("NICEHASH", "setFirewallRulesProcess all OK");
                 var installedPlugins = MinerPluginsManager.GetPluginUUIDsAndVersionsList();
                 _pluginsUUIDsWithVersions = installedPlugins;
                 InternalConfigs.WriteFileSettings(_firewallRulesAddedFilePath, _pluginsUUIDsWithVersions);
             }
         }
     }
     catch (Exception ex)
     {
         Logger.Error("NICEHASH", $"SetFirewallRules error: {ex.Message}");
     }
 }
Ejemplo n.º 2
0
        public static bool IsFirewallRulesOutdated()
        {
            var installedPlugins = MinerPluginsManager.GetPluginUUIDsAndVersionsList();

            return(installedPlugins.Except(_pluginsUUIDsWithVersions).Count() > 0);
        }