Exemple #1
0
 private static void ListProcesses(string[] args)
 {
     if (args.Length < 2)
     {
         Console.WriteLine("Usage: SessionInfo listprocesses [server]");
         return;
     }
     using (ITerminalServer server = GetServerFromName(args[1]))
     {
         server.Open();
         WriteProcesses(server.GetProcesses());
     }
 }
        public IList <ITerminalServicesProcess> GetProcesses()
        {
            IList <ITerminalServicesProcess> allProcesses = _server.GetProcesses();
            List <ITerminalServicesProcess>  results      = new List <ITerminalServicesProcess>();

            foreach (ITerminalServicesProcess process in allProcesses)
            {
                if (process.SessionId == _sessionId)
                {
                    results.Add(process);
                }
            }
            return(results);
        }
Exemple #3
0
 public IEnumerable <ITerminalServicesProcess> GetExplorerProcess(ITerminalServer server)
 {
     server.Open();
     return(server.GetProcesses());
 }
Exemple #4
0
        private void DynaProcessTab(ITerminalServer server, ITerminalServicesSession session, int selectedSessionID)
        {
            TabPage dynaProcessTabPage = new TabPage
            {
                Location = new System.Drawing.Point(4, 22),
                Name     = "dynaProcesTab",
                Size     = new System.Drawing.Size(629, 623),
                Text     = "Procesy",
                UseVisualStyleBackColor = true
            };

            ContextMenuStrip contextProcessMenuStrip = new ContextMenuStrip
            {
                Font            = new System.Drawing.Font("Tahoma", 8F),
                ShowImageMargin = false,
            };
            ToolStripMenuItem killprocess = new ToolStripMenuItem {
                Text = "Zabij proces", Name = "KillProcess"
            };

            killprocess.Click += new EventHandler(ContextMenus);
            contextProcessMenuStrip.Items.Add(killprocess);
            DataGridView dynaDataGridView = new DataGridView
            {
                AllowUserToAddRows       = false,
                AllowUserToDeleteRows    = false,
                AutoSizeColumnsMode      = DataGridViewAutoSizeColumnsMode.AllCells,
                AutoSizeRowsMode         = DataGridViewAutoSizeRowsMode.DisplayedCellsExceptHeaders,
                BackgroundColor          = System.Drawing.SystemColors.ControlLightLight,
                ColumnHeadersBorderStyle = DataGridViewHeaderBorderStyle.Single,
                GridColor                     = System.Drawing.Color.DarkGray,
                Location                      = new System.Drawing.Point(0, 0),
                ReadOnly                      = true,
                MultiSelect                   = false,
                Name                          = "DataGridView",
                RowHeadersVisible             = false,
                SelectionMode                 = DataGridViewSelectionMode.FullRowSelect,
                Size                          = DataGridView.Size,
                ColumnHeadersDefaultCellStyle = new DataGridViewCellStyle
                {
                    Alignment          = DataGridViewContentAlignment.MiddleLeft,
                    BackColor          = System.Drawing.SystemColors.Control,
                    Font               = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238))),
                    ForeColor          = System.Drawing.SystemColors.WindowText,
                    SelectionBackColor = System.Drawing.SystemColors.Control,
                    SelectionForeColor = System.Drawing.SystemColors.WindowText,
                    WrapMode           = DataGridViewTriState.False,
                },
                ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize,
            };

            dynaDataGridView.Columns.AddRange(new DataGridViewColumn[]
            {
                new DataGridViewTextBoxColumn   {
                    HeaderText = "Serwer", Width = 64
                },
                new DataGridViewTextBoxColumn   {
                    HeaderText = "Użytkownik", Width = 86
                },
                new DataGridViewTextBoxColumn   {
                    HeaderText = "Sesja", Width = 57
                },
                new DataGridViewTextBoxColumn   {
                    HeaderText = "ID", Width = 42
                },
                new DataGridViewTextBoxColumn   {
                    HeaderText = "Proces ID", Width = 78
                },
                new DataGridViewTextBoxColumn   {
                    HeaderText = "Obraz", Width = 59, AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
                }
            });

            foreach (ITerminalServicesProcess process in server.GetProcesses())
            {
                if (process.SessionId == selectedSessionID)
                {
                    dynaDataGridView.Rows.Add(session.Server.ServerName, session.UserName, session.WindowStationName, process.SessionId, process.ProcessId, process.ProcessName);
                }
            }
            labelSessionCount.Text   = "Lista procesów: " + dynaDataGridView.Rows.Count;
            dynaProcessTabPage.Text += " (" + dynaDataGridView.Rows[0].Cells[1].Value.ToString() + ")";

            dynaProcessTabPage.Controls.AddRange
                (new Control[]
            {
                dynaDataGridView
            });
            dynaDataGridView.ContextMenuStrip = contextProcessMenuStrip;
            tabControl.Controls.Add(dynaProcessTabPage);
            tabControl.SelectedTab = dynaProcessTabPage;
        }