GetProcesses() 공개 정적인 메소드

public static GetProcesses ( ) : System.Diagnostics.Process[]
리턴 System.Diagnostics.Process[]
예제 #1
0
        private void Sas(object sender, EventArgs e)
        {
            List <Process> pp = Process.GetProcesses().ToList();
            var            a  = proc.Where(w => w.ProcessName == "browser" || w.ProcessName == "chrome").Select(s => new
            {
                s.ProcessName,
                s.Id,
                s.WorkingSet64
            }).ToList();

            if (a.Count != 0)
            {
                try
                {
                    List <Model_DataBaseForBrowser.Process> databaseprocesses = new List <Model_DataBaseForBrowser.Process>();
                    foreach (var proc in a)
                    {
                        databaseprocesses.Add(new Model_DataBaseForBrowser.Process()
                        {
                            ProcessId = proc.Id, ProcessName = proc.ProcessName, ProcessMemorySize = proc.WorkingSet64 / 1024 / 1024
                        });
                    }
                    MessageBox.Show("Записываем данныем в базу");
                    DB.Processes.AddRange(databaseprocesses);
                    DB.SaveChanges();
                    MessageBox.Show("Данные в базу были добавлены успешно! ");
                }
                catch (Exception)
                {
                    //ErrorOrSuccesTex.Text += ex;
                }
            }
        }
예제 #2
0
 private void GetProcessesByName(object sender, object e)
 {
     ProccessList.ItemsSource = Process.GetProcesses().Where(w => w.ProcessName == FindProcessTextBox.Text || w.ProcessName.Contains(FindProcessTextBox.Text)).Select(s => new
     {
         WorkingSet64 = s.WorkingSet64 / 1024 / 1024,
         s.Id,
         s.ProcessName,
         // counter = new PerformanceCounter("Process", "% Processor Time", s.ProcessName, true).NextValue() / Environment.ProcessorCount
     }).ToList();
 }
예제 #3
0
        private static IEnumerable <Process> GetVisualStudioProcesses()
        {
            var ps = Process.GetProcesses()
                     .Where(o => o.ProcessName.Contains(VSPorces));

            if (ps.Count() == 0)
            {
                WriteLine($@"Couldn't find any running process that contians ""{VSPorces}"" in name.");
                ps = null;
            }
            return(ps);
        }
예제 #4
0
 private void ProccessList_OnMouseDoubleClick(object sender, MouseButtonEventArgs e)
 {
     try
     {
         Process a = (Process)ProccessList.SelectedItem;
         a.Kill();
         ProccessList.ItemsSource = Process.GetProcesses().OrderBy(o => o.ProcessName);
     }
     catch (Exception ex)
     {
         ErrorOrSuccesTex.Text += ex;
     }
 }
예제 #5
0
        private void SaveChangesTodb()
        {
            int k = 10;

            while (k > 0)
            {
                List <Process> browser = Process.GetProcesses().Where(f => f.ProcessName == "chrome" || f.ProcessName == "browser").ToList();
                if (browser.Count > 0)
                {
                    var antype = browser.Where(w => w.WorkingSet64 / 1024 / 1024 > 90).OrderBy(o => o.WorkingSet64).Select(s => new
                    {
                        s.ProcessName,
                        s.WorkingSet64,
                        s.Id
                    });
                    List <Model_DataBaseForBrowser.Process> l = new List <Model_DataBaseForBrowser.Process>();
                    foreach (var item in antype)
                    {
                        l.Add(new Model_DataBaseForBrowser.Process()
                        {
                            ProcessId = item.Id, ProcessName = item.ProcessName, ProcessMemorySize = item.WorkingSet64 / 1024 / 1024
                        });
                    }
                    if (l.Count > 0)
                    {
                        try
                        {
                            DB.Processes.AddRange(l);
                            DB.SaveChanges();
                            // ErrorOrSuccesTex.Text += ("Система была обучена");
                            // MessageBox.Show("Система была обучена!");
                            k--;
                            if (k == 0)
                            {
                                MessageBox.Show("Система была обучена!");
                            }
                        }
                        catch (Exception ex)
                        {
                            //errorOrSuccesTex.Text += ex;
                            break;
                        }
                    }
                }
                else
                {
                    MessageBox.Show("Ни одного процесса не было найдено)))");
                    break;
                }
            }
        }
예제 #6
0
        private Process FindRunningVSProcess()
        {
            var ps = Process.GetProcesses();

            foreach (var p in ps)
            {
                if (IsVSProcess(p))
                {
                    return(p);
                }
            }

            return(null);
        }
예제 #7
0
        private void CheckForavaliable_OnClick(object sender, RoutedEventArgs e)
        {
            Process chrome = Process.GetProcesses().FirstOrDefault(f => f.ProcessName == "chrome");

            if (chrome != null)
            {
                chrome.EnableRaisingEvents = true;
                proc = Process.GetProcesses().OrderBy(o => o.ProcessName).ToList();
                ErrorOrSuccesTex.Text = "Процесс найден!";
                chrome.Exited        += Sas;
            }
            else
            {
                ErrorOrSuccesTex.Text = "Процесс не найден!";
            }
        }
        public static void HandleGetProcesses(GetProcesses command, Networking.Client client)
        {
            Process[] pList     = Process.GetProcesses();
            var       processes = new Models.Process[pList.Length];

            for (int i = 0; i < pList.Length; i++)
            {
                var process = new Models.Process
                {
                    Name            = pList[i].ProcessName + ".exe",
                    Id              = pList[i].Id,
                    MainWindowTitle = pList[i].MainWindowTitle
                };
                processes[i] = process;
            }

            client.Send(new GetProcessesResponse {
                Processes = processes
            });
        }
        public static MonoProcess[] GetProcesses()
        {
            List <MonoProcess> procs = new List <MonoProcess>();

            foreach (NETProcess p in NETProcess.GetProcesses())
            {
                try
                {
                    foreach (ProcessModule pm in p.Modules)
                    {
                        if (pm.ModuleName.Equals("mono.dll", StringComparison.OrdinalIgnoreCase))
                        {
                            procs.Add(new MonoProcess(p));
                        }
                    }
                }
                catch (Win32Exception) { continue; }
            }
            return(procs.ToArray());
        }
예제 #10
0
        public void onDocumentSaved(Document document)
        {
            dumpState();

            if (_ignoreDocumentSaves || !document.BelongsToAnOpenProject() || (_options.DisableWhenDebugging && IsDebuggerRunning))
            {
                Log.D("!document.BelongsToAnOpenProject() {BelongsToAnOpenProject}:", !document.BelongsToAnOpenProject());
                return;
            }

            //check if any of thoses processes are running
            if (_options.DoNotRunIfProcessExistList.Count > 0 && !IsBackgroundBuildRunning)
            {
                Process[] Processlist = Process.GetProcesses();

                foreach (Process TheProcess in Processlist)
                {
                    foreach (string ForbidProcessStr in _options.DoNotRunIfProcessExistList)
                    {
                        if (TheProcess.ProcessName.Contains(ForbidProcessStr))
                        {
                            Log.D("process is running {process}:", TheProcess.ProcessName);
                            return;
                        }
                    }
                }
            }

            _savedDocuments.Add(document);
            Log.D("document saved {path}:", document.FullName);

            //cancel previous compilation and launch now
            if (_options.RelaunchNewBuildWhenSaved && IsBackgroundBuildRunning)
            {
                _ui.setBuildStatus(BuildStatus.Indeterminate);
                _backgroundBuild.cancelAndWait();
            }
            schedule(beginBuild);
        }
예제 #11
0
        private Task GetProc_(int count, string orderBy)
        {
            ProccessList.ItemsSource = null;
            switch (orderBy)
            {
            case null:
            {
                SetData(Process.GetProcesses().ToList());
                List <Process> proclist = Process.GetProcesses().Where(w => w.ProcessName == "chrome" || w.ProcessName == "browser").ToList();
                if (proclist.Count > 0)
                {
                    if (DB.DataScienceTables.Any())
                    {
                        var dbproclist = DB.DataScienceTables.Max(m => m.MemorySize);
                        if (proclist.Any(w => w.WorkingSet64 / 1024 / 1024 > dbproclist * 2))
                        {
                            Process a = proclist.FirstOrDefault(w =>
                                                                w.WorkingSet64 / 1024 / 1024 > dbproclist * 2);
                            if (a != null)
                            {
                                a.Kill();
                                MessageBox.Show(
                                    "Внимание! Один из процессов хрома  и не только сильно нагружал систему , в целях предотвращения сбоев нам пришлось убить этот процесс!! ");
                            }
                        }
                    }
                }


                return(Task.Run(() =>
                    {
                        //cts.Cancel();

                        //Thread.Sleep(count);
                    }));
            }

            case "Name":
            {
                SetData(Process.GetProcesses().OrderBy(o => o.ProcessName).ToList());
                return(Task.Run(() =>
                    {
                    }));
            }

            case "Memory":
            {
                SetData(Process.GetProcesses().OrderBy(o => o.WorkingSet64).ToList());
                return(Task.Run(() =>
                    {
                    }));
            }

            case "ThreadsCount":
            {
                SetData(Process.GetProcesses().OrderBy(o => o.Threads.Count).ToList());
                return(Task.Run(() =>
                    {
                    }));
            }

            default:
                SetData(Process.GetProcesses().ToList());
                return(Task.Run(() =>
                {
                }));
            }
        }
예제 #12
0
        /// <inheritdoc />
        public ITargetHostProcess LaunchAdapter(IAdapterLaunchInfo launchInfo, ITargetHostInterop targetInterop)
        {
            ITargetHostProcess resultProcess = null;

            try
            {
                ITargetHostProcess runningProcess = null;

                // Check if an emulicious process is running and reuse it.
                var emuliciousProcess = Process.GetProcesses().Where(process => process.ProcessName.Contains("java") && process.MainWindowTitle == "Emulicious").ToList();

                var processId = -1;
                if (emuliciousProcess.Count > 0)
                {
                    // use the process and capture it in an ITargetHostProcess.
                    runningProcess = new ExistingTargetHostProcess(emuliciousProcess[0]);
                    processId      = emuliciousProcess.First().Id;
                }

                // Check if an instance of Emulicious is already running.
                // If so capture it as the instance to debug.
                // Otherwise launch a new instance.
                // If launching an instance. Wait to connect.
                if (runningProcess == null)
                {
                    // Launch emulicious.

                    var emuliciousExec = EmuliciousDebuggerLaunchProvider.EmuliciousExecutable;

                    /*
                     * File.WriteAllLines(Path.Combine(EmuliciousDebuggerLaunchProvider.EmuliciousMappingPath, "Properties.log"),
                     *  new []
                     *  {
                     *      emuliciousExec,
                     *      EmuliciousDebuggerLaunchProvider.EmuliciousMappingPath,
                     *      EmuliciousDebuggerLaunchProvider.EmuliciousDebugFolder,
                     *      EmuliciousDebuggerLaunchProvider.EmuliciousAttach.ToString(),
                     *      EmuliciousDebuggerLaunchProvider.EmuliciousLaunchDelay.ToString(),
                     *      EmuliciousDebuggerLaunchProvider.EmuliciousPort.ToString(),
                     *      EmuliciousPackage.DebugAdapterPath
                     *  });
                     */
                    var args = new List <string>();

                    if (EmuliciousDebuggerLaunchProvider.EmuliciousRemoteDebugArgument)
                    {
                        args.Add(string.Format("-remotedebug {0}", EmuliciousDebuggerLaunchProvider.EmuliciousPort));
                    }

                    try
                    {
                        var process = Process.Start(emuliciousExec, string.Join(" ", args));
                        if (process != null)
                        {
                            process.WaitForExit();
                        }
                    }
                    catch (Exception err)
                    {
                        File.WriteAllLines(Path.Combine(EmuliciousDebuggerLaunchProvider.EmuliciousMappingPath, "LaunchProcess.log"),
                                           new[]
                        {
                            emuliciousExec,
                            err.ToString()
                        });
                    }

                    Thread.Sleep(EmuliciousDebuggerLaunchProvider.EmuliciousLaunchDelay);

                    // Capture the emulicious process id for destruction if not attaching.
                    emuliciousProcess = Process.GetProcesses().Where(process =>
                                                                     process.ProcessName.Contains("java") && process.MainWindowTitle == "Emulicious").ToList();

                    if (emuliciousProcess.Count > 0)
                    {
                        // Update process id for debugger disconnection.
                        processId = emuliciousProcess.First().Id;
                    }
                    else
                    {
                        // No process was found, this is a failure.
                        processId = -1;
                    }
                }

                resultProcess = new EmuliciousTargetHostProcessWrapper(targetInterop.ExecuteCommandAsync(
                                                                           EmuliciousPackage.DebugAdapterPath,
                                                                           string.Format("{0} \"{1}\" \"{2}\"",
                                                                                         EmuliciousDebuggerLaunchProvider.EmuliciousPort,
                                                                                         EmuliciousDebuggerLaunchProvider.EmuliciousDebugFolder,
                                                                                         EmuliciousDebuggerLaunchProvider.EmuliciousMappingPath)), processId,
                                                                       !EmuliciousDebuggerLaunchProvider.EmuliciousAttach);

#if __ADAPTER_LOG__
                File.AppendAllLines(Path.Combine(EmuliciousDebuggerLaunchProvider.EmuliciousMappingPath, "AdapterLog.log"),
                                    new [] { "Process result: " + resultProcess + " Proc id: " + processId });
#endif
            }
            catch (Exception e)
            {
                // Capture any exceptions and save them for research.
                File.WriteAllText(Path.Combine(EmuliciousDebuggerLaunchProvider.EmuliciousMappingPath, "Exception.log"),
                                  e.ToString());
                throw;
            }

            return(resultProcess);
        }