this is what i have for code:
using System; using System.Net; using System.Net.Mail; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Text.RegularExpressions; using System.Threading.Tasks; using System.Windows.Forms; using System.Security.Cryptography; namespace LoginSystem { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void label6_Click(object sender, EventArgs e) { } private void loginsBindingNavigatorSaveItem_Click(object sender, EventArgs e) { this.Validate(); this.loginsBindingSource.EndEdit(); this.tableAdapterManager.UpdateAll(this.loginsDataSet); } private void Form1_Load(object sender, EventArgs e) { // TODO: This line of code loads data into the 'loginsDataSet.Logins' table. You can move, or remove it, as needed. this.loginsTableAdapter.Fill(this.loginsDataSet.Logins); } private void registerButton_Click(object sender, EventArgs e) { AddUser(registerUserName.Text, registerPassword.Text, registerConfirmPassword.Text, registerEmail.Text); } string email; private void AddUser(string username, string password, string confirmPass, string email) { //Local variables to hold values string smtpEmail = smtpUserNameTextBox.Text; string smtpPassword = smtpPasswordTextBox.Text; int smtpPort = (int)smtpPortNumericUD.Value; string smtpAddress = smtpAddressTextBox.Text; //Regex for making sure Email is valid Regex regex = new Regex(@"^([\w\.\-]+)@([\w\-]+)((\.(\w){2,3})+)$"); Match match = regex.Match(email); //Loop through Logins table foreach (DataRow row in loginsDataSet.Logins) { //And look for matching usernames if (row.ItemArray[0].Equals(username)) { //If one is found, show message: MessageBox.Show("Username already exists"); return; } } //Confirm pass must equal password. if (password != confirmPass) { MessageBox.Show("Passwords do not match"); } //Password must be at least 6 characters long else if (password.Length < 6) { MessageBox.Show("Password must be at least 6 characters long"); } //If email is NOT valid else if (!match.Success) { MessageBox.Show("Invalid Email"); } //If there is no usrename else if (username == null) { MessageBox.Show("Must have Username"); } //If all is well, create the new user! else { loginsDataSet.LoginsRow newUserRow = loginsDataSet.Logins.NewLoginsRow(); string EncryptedPass = HashPass(password); newUserRow.Username = username; newUserRow.Password = EncryptedPass; newUserRow.Email = email; loginsDataSet.Logins.Rows.Add(newUserRow); registerUserName.Text = String.Empty; registerPassword.Text = String.Empty; registerConfirmPassword.Text = String.Empty; registerEmail.Text = String.Empty; MessageBox.Show("Thank you for registering!"); if (String.IsNullOrWhiteSpace(smtpEmail) || String.IsNullOrWhiteSpace(smtpPassword) || String.IsNullOrWhiteSpace(smtpAddress) || smtpPort <= 0) { MessageBox.Show("Email Configuration is not set up Correctly! \nCannot send email!"); } else { SendMessage(email.ToString(), username.ToString(), password.ToString()); } } } public void SendMessage(string ToAddress, string ToName, string password) { var client = new SmtpClient(smtpAddressTextBox.Text, (int)smtpPortNumericUD.Value) { Credentials = new NetworkCredential(smtpUserNameTextBox.Text, smtpPasswordTextBox.Text), EnableSsl = true }; client.Send(smtpUserNameTextBox.Text, ToAddress,"Thank You","Thank you for registering with us today! \n Your username/passwords are: \n \nUsername: " + ToName.ToString() + "\nPassword: " + password.ToString()); } public string HashPass(string password) { SHA256 sha = new SHA256CryptoServiceProvider(); //compute hash from the bytes of text sha.ComputeHash(ASCIIEncoding.ASCII.GetBytes(password + email)); //gethash result after compute it byte[] result = sha.Hash; StringBuilder strBuilder = new StringBuilder(); for (int i = 0; i < result.Length; i++) { //change it into 2 hexadecimal digits //for each byte strBuilder.Append(result[i].ToString("x2")); } return strBuilder.ToString(); } private void loginButton_Click(object sender, EventArgs e) { //Locals to hold values string username = loginUserName.Text; string password = HashPass(loginPassword.Text); //Loop through database foreach (DataRow row in loginsDataSet.Logins) { //And search for Username and Pass that match if (row.ItemArray[0].Equals(username) && row.ItemArray[1].Equals(password)) { loginUserName.Text = String.Empty; loginPassword.Text = String.Empty; MessageBox.Show("Login Success"); break; } //If not, then show this message. else { MessageBox.Show("Username/Password incorrect"); break; } } } } }