private void startWalletBtn_Click(object sender, System.EventArgs e) { if(is_running == false) { CUser user = new CUser(); if(user.validateLogin(usernameTxt.Text, passwordTxt.Text)) { //MessageBox.Show("Username is valid!!!"); uname = usernameTxt.Text; pwd = passwordTxt.Text; usernameTxt.Text = ""; usernameTxt.Enabled = false; passwordTxt.Text = ""; passwordTxt.Enabled = false; startWalletBtn.Text = "Terminate Wallet!!!"; //menuItem1.Enabled = true; menuItem7.Enabled = false; menuItem5.Enabled = false; statusLabel.Text = "Wallet server is running..."; notifyIcon1.Text = "OSDRM Wallet - Wallet server is running..."; is_running = true; goSrv = new Thread(new ThreadStart(this.goServer)); goSrv.IsBackground = true; goSrv.Start(); WindowState = FormWindowState.Minimized; } else { MessageBox.Show("Username is invalid!!!"); } } else if(is_running == true) { //if(goSrv.IsAlive) //MessageBox.Show("estou a tentar matar a thread"); goSrv.Interrupt(); goSrv.Abort(); //TcpClient cli = new TcpClient("127.0.0.1", 9999); //cli.Close(); //this.stopServer(); //goSrv.Abort(); this.Dispose(); Application.Exit(); } }