void im_RegisterFailed(object sender, IMErrorEventArgs e) { this.BeginInvoke(new MethodInvoker(delegate { status.Text = "Register failed!"; })); }
virtual protected void OnRegisterFailed(IMErrorEventArgs e) { if (RegisterFailed != null) { RegisterFailed(this, e); } }
virtual protected void OnLoginFailed(IMErrorEventArgs e) { if (LoginFailed != null) { LoginFailed(this, e); } }
void SetupConn() // Setup connection and login { client = new TcpClient(Server, Port); netStream = client.GetStream(); ssl = new SslStream(netStream, false, new RemoteCertificateValidationCallback(ValidateCert)); ssl.AuthenticateAsClient("Server"); br = new BinaryReader(ssl, Encoding.UTF8); bw = new BinaryWriter(ssl, Encoding.UTF8); int hello = br.ReadInt32(); if (hello == IM_Hello)// If the hello is correct, continue into if { bw.Write(IM_Hello); bw.Flush(); bw.Write(reg ? IM_Register : IM_Login); bw.Write(UserName); bw.Write(Password); bw.Flush(); byte ans = br.ReadByte(); if (ans == IM_OK) { if (reg) { OnRegisterOK(); } OnLoginOK(); Receiver(); } else // Login/register failed { IMErrorEventArgs err = new IMErrorEventArgs((IMError)ans); if (reg) { OnRegisterFailed(err); } else { OnLoginFailed(err); } } } }