Example #1
0
 public ApplicationConfigPage()
 {
     _lvw    = new ProcessListView();
     _editor = new ApplicationEditor();
     _split  = new SplitContainer();
     InitUi();
 }
Example #2
0
        private unsafe void UpdateProcessInfo()
        {
            ProcessListView.SuspendLayout();
            ProcessListView.BeginUpdate();
            ProcessListView.Items.Clear();

            ProcessList = new List <Process>(Process.GetProcesses());
            ProcessList.Sort(ProcessComparer.Reverse);
            IDsList = new int[ProcessList.Count];
            ImageList ImageListSmall = new ImageList();
            Icon      Ico;
            int       ImageCount = 0;

            for (int ecx = 0; ecx < ProcessList.Count; ecx++)
            {
                Ico = null;

                try
                {
                    //Grabbing icons from files in sys32 is disallowed (depending on icon grab
                    //method) for security purposes, so don't bother trying
                    if (!ProcessList[ecx].MainModule.FileName.Contains("system32"))
                    {
                        //Try to grab icon
                        Ico = GetIcon(ProcessList[ecx].MainModule.FileName, 0); //Fast
                        //Ico = ExtractIconFromExe(ProcessList[ecx].MainModule.FileName, false); //Medium
                        //Ico = SHGetFileIcon(ProcessList[ecx].MainModule.FileName, 0, false); //Fast
                    }
                }
                catch { }

                if (ProcessList[ecx].MainWindowTitle != "")
                {
                    //Include title window name
                    ProcessListView.Items.Add(
                        Conversions.ToAddress(Convert.ToString(ProcessList[ecx].Id)) + " - " +
                        ProcessList[ecx].ProcessName + " - (" + ProcessList[ecx].MainWindowTitle + ")");
                }
                else
                {
                    //No name, just add process name
                    ProcessListView.Items.Add(
                        Conversions.ToAddress(Convert.ToString(ProcessList[ecx].Id)) + " - " +
                        ProcessList[ecx].ProcessName);
                }

                IDsList[ecx] = ProcessList[ecx].Id;
                if (Ico != null)
                {
                    //Add the new Icon to the list
                    ImageListSmall.Images.Add(Ico);
                    //Set the image index to the corresponding image
                    ProcessListView.Items[ecx].ImageIndex = ImageCount++;
                }
            }

            ProcessListView.SmallImageList = ImageListSmall;
            ProcessListView.ResumeLayout();
            ProcessListView.EndUpdate();
        }
Example #3
0
 private void OnProcessListViewResize(object sender, EventArgs e)
 {
     if (ProcessListView.Columns.Count > 0)
     {
         ProcessListView.AutoResizeColumn(
             ProcessListView.Columns.Count - 1,
             ColumnHeaderAutoResizeStyle.HeaderSize);
     }
 }
Example #4
0
 public MainWindow()
 {
     InitializeComponent();
     Main.Children.Clear();
     if (processListView == null)
     {
         processListView = new ProcessListView();
     }
     Main.Children.Add(processListView);
 }
Example #5
0
        public MainDialog()
        {
            InitializeComponent();
            logsForm = new LogsDialog();
            SetupMainDialogStatusTexts();
            HandleCreated    += OnHandleCreated;
            ProcessManager    = new ProcessManager();
            metricsManager    = new Metrics.Manager();
            screenshotService = new ExecutorService();

            ProcessListView.SetDoubleBuffered(true);
            MetricsChart.SetDoubleBuffered(true);
        }
Example #6
0
 public NavigationModel(IContentWindow contentWindow)
 {
     _contentWindow = contentWindow;
     _mainView      = new ProcessListView();
 }