protected virtual void OnLoginFailed(IMErrorEventArgs e) { if (LoginFailed != null) { LoginFailed(this, e); } }
protected virtual void OnRegisterFailed(IMErrorEventArgs e) { if (RegisterFailed != null) { RegisterFailed(this, e); } }
private void OnIm_RegisterFailed(object sender, IMErrorEventArgs e) { this.BeginInvoke(new MethodInvoker(delegate { MessageBox.Show("Register Failed! Error Code {0}", e.Error.ToString()); usernameTextBox.Text = ""; passwordTextBox.Text = ""; this.status.Text = "Log In or Register"; im = new IM_Client(); })); }
public BinaryWriter bw; // Write simple data void SetupConn() // Setup connection { client = new TcpClient(Server, Port); netStream = client.GetStream(); ssl = new SslStream(netStream, false, new RemoteCertificateValidationCallback(ValidateCert)); ssl.AuthenticateAsClient("Itamar Reif"); br = new BinaryReader(ssl, Encoding.UTF8); bw = new BinaryWriter(ssl, Encoding.UTF8); int hello = br.ReadInt32(); if (hello == IM_Hello) // Receive confirmation from server { bw.Write(IM_Hello); bw.Flush(); // Send back confirmation to server bw.Write(Reg ? IM_Register : IM_Login); // Register or log in bw.Write(Username); bw.Write(Password); bw.Flush(); byte ans = br.ReadByte(); if (ans == IM_OK) // Login/Register OK { if (Reg) { OnRegisterOK(); Receiver(); // Packet receiving loop } else { OnLoginOK(); Receiver(); // Packet receiving loop } } else // Login/Register FAIL { IMErrorEventArgs error = new IMErrorEventArgs((IMError)ans); if (Reg) { OnRegisterFailed(error); } else { OnLoginFailed(error); } } } CloseConn(); }