public static void Main(string[] args) { if (args.Length == 1 && (args[0] == "?" || args[0] == "/?" || args[0] == "-?" || args[0].ToLower() == "help")) { Console.WriteLine(usage); } else { Console.WriteLine("Retrieved by CLR..."); Console.WriteLine("User: "******"Domain: "+Environment.UserDomainName); Console.WriteLine(""); Console.WriteLine("Retrieved by WTSAPI..."); TerminalServer WTSinfo = new TerminalServer(); Console.Write("Currently logged user: "******"\n"); else Console.WriteLine("<no user>" + "\n"); WTSinfo.GetSessionInfo(); } }
public void Connect(Kohl.Framework.Security.Credential credentials) { progress.Visible = true; splitContainer1.Visible = false; this.SelectedSession = null; this.dataGridView1.DataSource = null; this.dataGridView2.DataSource = null; this.propertyGrid1.SelectedObject = null; this.server = TerminalServer.LoadServer(this.ServerNameComboBox.Text, credentials); progress.Visible = false; splitContainer1.Visible = true; if (this.server.IsTerminalServer) { this.dataGridView1.DataSource = this.server.Sessions; if (this.dataGridView1.Columns.Count > 0) { this.dataGridView1.Columns[1].Visible = false; } if (this.server.Sessions == null) { MessageBox.Show("Terminals was unable to enumerate your server's sessions." + (this.server.Errors != null & this.server.Errors.Count > 0 ? "\n" + this.server.Errors[0] : "")); } } else { MessageBox.Show("This machine does not appear to be a terminal server."); } }
static public void Main(string[] args) { if (args.Length == 1 && (args[0] == "?" || args[0] == "/?" || args[0] == "-?" || args[0].ToLower() == "help")) { Console.WriteLine(usage); } else { Console.WriteLine("Retrieved by CLR..."); Console.WriteLine("User: "******"Domain: " + Environment.UserDomainName); Console.WriteLine(""); Console.WriteLine("Retrieved by WTSAPI..."); TerminalServer WTSinfo = new TerminalServer(); Console.Write("Currently logged user: "******"\n"); } else { Console.WriteLine("<no user>" + "\n"); } WTSinfo.GetSessionInfo(); } }
internal TerminalSession(TerminalServer server, WTS_SESSION_INFO info) { _server = server; _sessionId = info.SessionId; _winStation = info.WinStationName; _state = (TerminalSessionState)(info.State); _client = new TerminalSessionClientInfo(this); }
private void CheckForTS(object state) { IFavorite favorite = state as IFavorite; try { Thread.Sleep(3000); this.Server = TerminalServer.LoadServer(favorite.ServerName); this.IsTerminalServer = this.Server.IsATerminalServer; } catch (Exception exception) { const string MESSAGE = "Checked to see if {0} is a terminal server. {0} is not a terminal server"; string message = String.Format(MESSAGE, favorite.ServerName); Logging.Error(message, exception); } }
private void button1_Click(object sender, EventArgs e) { this.SelectedSession = null; this.dataGridView1.DataSource = null; this.dataGridView2.DataSource = null; this.propertyGrid1.SelectedObject = null; Application.DoEvents(); this.server = TerminalServer.LoadServer(this.ServerNameComboBox.Text); if (this.server.IsATerminalServer) { this.dataGridView1.DataSource = this.server.Sessions; this.dataGridView1.Columns[1].Visible = false; } else { MessageBox.Show("This machine does not appear to be a terminal server."); } }
protected override void ProcessServer(TerminalServer server) { foreach (TerminalSession session in server.Sessions) { if (Id == null || Array.IndexOf<Int32>(Id, session.Id) > -1) { try { ProcessSession(session); } catch (System.Runtime.InteropServices.ExternalException exc) { ErrorHandler.WriteWin32Error(exc, "TerminalSessionError", ErrorCategory.NotSpecified, session); } } if (Stopping) { break; } } }
protected override void ProcessServer(TerminalServer server) { foreach (TerminalSession session in server.Sessions) { if (Id == null || Array.IndexOf <Int32>(Id, session.Id) > -1) { try { ProcessSession(session); } catch (System.Runtime.InteropServices.ExternalException exc) { ErrorHandler.WriteWin32Error(exc, "TerminalSessionError", ErrorCategory.NotSpecified, session); } } if (Stopping) { break; } } }
protected override void OnResumeSuspend() { TerminalServer wts = Component <TerminalServer>(); if (wts.ConsoleActive && !wts.ConsoleLocked) { //= keine Kennworteingabe nach dem Aufwachen try { helper = new SessionHelperInvocation(Component <SessionHelper>()); helper.UserDetected += OnUserDetected; } catch (Exception e) { EventLog.WriteEntry(e.ToString(), EventLogEntryType.Error, 2); return; } } timer.Start(); }
private void sd_Click(object sender, EventArgs e) { var menu = sender as ToolStripMenuItem; if (menu != null) { if (menu.Text == Resources.Shutdown) { var server = menu.Tag as TerminalServer; if (server != null && MessageBox.Show(Resources.Areyousureyouwanttoshutthismachineoff, Resources.Confirmation, MessageBoxButtons.OKCancel) == DialogResult.OK) { TerminalServicesAPI.ShutdownSystem(server, false); } } else if (menu.Text == Resources.Reboot) { var server = menu.Tag as TerminalServer; if (server != null && MessageBox.Show(Resources.Areyousureyouwanttorebootthismachine, Resources.Confirmation, MessageBoxButtons.OKCancel) == DialogResult.OK) { TerminalServicesAPI.ShutdownSystem(server, true); } } else if (menu.Text == Resources.Logoff) { var session = menu.Tag as Session; if (session != null && MessageBox.Show(Resources.Areyousureyouwanttologthissessionoff, Resources.Confirmation, MessageBoxButtons.OKCancel) == DialogResult.OK) { TerminalServicesAPI.LogOffSession(session, false); } } else if (menu.Text == Resources.SendMessage) { var session = menu.Tag as Session; TerminalServer.SendMessageToSession(session); } } }
private void ConnectButton_Click(object sender, EventArgs e) { if (this.ParentForm != null) { this.ParentForm.Cursor = Cursors.WaitCursor; } this.selectedSession = null; dataGridView1.DataSource = null; dataGridView2.DataSource = null; this.propertyGrid1.SelectedObject = null; Application.DoEvents(); server = TerminalServer.LoadServer(this.ServerNameComboBox.Text); try { if (server.IsATerminalServer) { dataGridView1.DataSource = server.Sessions; dataGridView1.Columns[1].Visible = false; } else { MessageBox.Show("This machine does not appear to be a Terminal Server"); } } catch (Exception) { // Do nothing when error } if (this.ParentForm != null) { this.ParentForm.Cursor = Cursors.Default; } }
protected virtual void ProcessServer(TerminalServer server) { }
private void SendMessageToolStripMenuItem_Click(object sender, EventArgs e) { TerminalServer.SendMessageToSession(this.selectedSession); }
protected virtual void ProcessServer(TerminalServer server) { }