static void Main(string[] args) { string browserComparisonEnabled = ConfigurationManager.AppSettings["browserComparisonEnabled"]; string browserNameComparison = ConfigurationManager.AppSettings["browserNameComparison"]; string propertiesFileName = ConfigurationManager.AppSettings["propertiesFileName"]; // Get current directory //string currentDirectory = Directory.GetCurrentDirectory(); string currentDirectory = System.IO.Path.GetDirectoryName(Assembly.GetEntryAssembly().Location); // Read properties from file string propertiiesFilePath = Path.Combine(currentDirectory, propertiesFileName); ProcessProperties processProperties = FileManager.ReadPropertiesFromFile(propertiiesFilePath); // Get process information back and validate it Process browserProcess = Process.GetProcessById(processProperties.processId); if (browserComparisonEnabled.Equals("true")) { // Validate by checking if the process name is the same as the one found earlier if (browserNameComparison.Equals(processProperties.processName)) { browserProcess.Kill(true); Console.WriteLine("Killed process: " + processProperties.processName); } } else { browserProcess.Kill(true); Console.WriteLine("Killed process: " + processProperties.processName); } }
public IEnumerable <CustomProcess> GetResponseProcesses(ProcessProperties property, bool desc) { var processes = GetCustomProcesses(); Func <CustomProcess, dynamic> func = p => ReturnPropertyValue(p, property); return(desc ? processes.OrderByDescending(func) : processes.OrderBy(func)); }
Get([FromQuery] ProcessProperties property, [FromQuery] bool desc) { var response = await Task.Run(() => _processes.GetResponseProcesses(property, desc)); return(Ok(response)); }
private static ProcessProperties ConfigureProcessProperties(Action <RunProgramConfigurator> programBuilderAction) { var processProperties = new ProcessProperties(); var programBuilder = new RunProgramConfigurator(processProperties); programBuilderAction(programBuilder); return(processProperties); }
public void Run(MsBuildProperties msBuildProperties) { var processProperties = new ProcessProperties() { Executable = "MSBuild.exe", Arguments = BuildArguments(msBuildProperties) }; _processRunner.RunProcess(processProperties); }
private static dynamic ReturnPropertyValue(CustomProcess process, ProcessProperties property) { return(property switch { ProcessProperties.Name => process.Name, ProcessProperties.Id => process.Id, ProcessProperties.IsResponding => process.IsResponding, ProcessProperties.Cpu => process.Cpu, ProcessProperties.Gpu => process.Gpu, ProcessProperties.Username => process.Username, ProcessProperties.StartTime => process.StartTime, ProcessProperties.PathToFile => process.PathToFile, ProcessProperties.ThreadsCount => process.ThreadsCount, _ => process.Name });
static void Main(string[] args) { // Extract constants from app.config string targetUrl = ConfigurationManager.AppSettings["targetUrl"]; string browserLocation = ConfigurationManager.AppSettings["browserLocation"]; string propertiesFileName = ConfigurationManager.AppSettings["propertiesFileName"]; // Get path to chromium //string currentDirectory = Directory.GetCurrentDirectory(); string currentDirectory = System.IO.Path.GetDirectoryName(Assembly.GetEntryAssembly().Location); string chromiumDirectory = Path.Combine(currentDirectory, browserLocation); // Create file information string propertiiesFilePath = Path.Combine(currentDirectory, propertiesFileName); Console.WriteLine("targetUrl :" + targetUrl); Console.WriteLine("browserLocation :" + browserLocation); Console.WriteLine("propertiesFileName :" + propertiesFileName); Console.WriteLine("currentDirectory :" + currentDirectory); Console.WriteLine("chromiumDirectory: " + chromiumDirectory); Console.WriteLine("propertiiesFilePath: " + propertiiesFilePath); FileManager.CreateFile(propertiiesFilePath); // Launch target url Console.WriteLine("Launching myDahlia's stream"); Process process = OpenUrl(chromiumDirectory, targetUrl); // Store process information ProcessProperties propertiesToStore = new ProcessProperties { processId = process.Id, processName = process.ProcessName }; FileManager.WritePropertiesIntoFile(propertiesToStore, propertiiesFilePath); }
public RunProgramConfigurator(ProcessProperties properties) { _properties = properties; }
static void Main(string[] args) { // Extract constants from app.config string targetUrl = ConfigurationManager.AppSettings["targetUrl"]; string browserLocation = ConfigurationManager.AppSettings["browserLocation"]; string browserComparisonEnabled = ConfigurationManager.AppSettings["browserComparisonEnabled"]; string browserNameComparison = ConfigurationManager.AppSettings["browserNameComparison"]; string propertiesFileName = ConfigurationManager.AppSettings["propertiesFileName"]; // Get path to chromium string currentDirectory = Directory.GetCurrentDirectory(); string chromiumDirectory = Path.Combine(currentDirectory, browserLocation); // Create file information string propertiiesFilePath = Path.Combine(currentDirectory, propertiesFileName); FileManager.CreateFile(propertiiesFilePath); // Launch target url Console.WriteLine("Launching myDahlia's stream"); Process process = OpenUrl(chromiumDirectory, targetUrl); // Store process information ProcessProperties propertiesToStore = new ProcessProperties { processId = process.Id, processName = process.ProcessName }; FileManager.WritePropertiesIntoFile(propertiesToStore, propertiiesFilePath); while (true) { ConsoleKeyInfo result = Console.ReadKey(true); if (result.Key == ConsoleKey.Escape) { break; } { // Read properties from file // Create file information string propertiiesFilePath2 = Path.Combine(currentDirectory, propertiesFileName); ProcessProperties processProperties = FileManager.ReadPropertiesFromFile(propertiiesFilePath2); // Get process information back and validate it Process browserProcess = Process.GetProcessById(processProperties.processId); if (browserComparisonEnabled.Equals("true")) { // Validate by checking if the process name is the same as the one found earlier if (browserNameComparison.Equals(processProperties.processName)) { browserProcess.Kill(true); Console.WriteLine("Killed process: " + processProperties.processName); } } else { browserProcess.Kill(true); Console.WriteLine("Killed process: " + processProperties.processName); } } } }
static public void WritePropertiesIntoFile(ProcessProperties properties, string path) { string content = JsonConvert.SerializeObject(properties); File.AppendAllText(path, content); }
private static void RunProcess(ProcessProperties processProperties) { var processRunner = new ProcessRunner(); processRunner.RunProcess(processProperties); }