static void Main() { // Check if application is running as service. if (Environment.UserName == "SYSTEM" && !Environment.UserInteractive) { // Run OS service. using (var service = new ServerService()) { System.ServiceProcess.ServiceBase.Run(service); } } else { // Run user interface. Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new MainForm()); // Save user settings. Properties.Settings.Default.Save(); } }
private void MainForm_Load(object sender, EventArgs e) { // Position form within screen. if (Properties.Settings.Default.MainFormLocation != new Point(-1, -1)) { this.Location = Properties.Settings.Default.MainFormLocation; } // Create new OS service for server. _service = new ServerService(); _service.TerminalChannelListChanged += new EventHandler <ChannelListChangedEventArgs>( _service_TerminalChannelListChanged); _service.TcpServer.ClientConnected += new EventHandler <ClientEventArgs>( tcpServer_ClientConnected); _service.TcpServer.ClientDisconnected += new EventHandler <ClientEventArgs>( tcpServer_ClientDisconnected); activeSessionsLabel.Text = _service.AllTerminalChannels.Count.ToString(); // Start server immediately. startButton.PerformClick(); }
private void MainForm_Load(object sender, EventArgs e) { // Position form within screen. if (Properties.Settings.Default.MainFormLocation != new Point(-1, -1)) this.Location = Properties.Settings.Default.MainFormLocation; // Create new OS service for server. _service = new ServerService(); _service.TerminalChannelListChanged += new EventHandler<ChannelListChangedEventArgs>( _service_TerminalChannelListChanged); _service.TcpServer.ClientConnected += new EventHandler<ClientEventArgs>( tcpServer_ClientConnected); _service.TcpServer.ClientDisconnected += new EventHandler<ClientEventArgs>( tcpServer_ClientDisconnected); activeSessionsLabel.Text = _service.AllTerminalChannels.Count.ToString(); // Start server immediately. startButton.PerformClick(); }
protected List <SshWinConsoleChannel> _allTermChannels; // List of all terminal channels from all clients. static ServerService() { SshWinConsoleChannel.InjectionDllFileName = Path.Combine(ServerService.GetStartupPath(), "ConsoleHook.dll"); }