|
@@ -4,6 +4,7 @@ using GalaSoft.MvvmLight.Threading;
|
|
|
using System.Security.Cryptography;
|
|
using System.Security.Cryptography;
|
|
|
using System.Threading.Tasks;
|
|
using System.Threading.Tasks;
|
|
|
using System.Text;
|
|
using System.Text;
|
|
|
|
|
+using GalaSoft.MvvmLight.Messaging;
|
|
|
|
|
|
|
|
namespace Egametang
|
|
namespace Egametang
|
|
|
{
|
|
{
|
|
@@ -44,28 +45,30 @@ namespace Egametang
|
|
|
{
|
|
{
|
|
|
byte[] opcodeBuffer = new byte[1] { (byte)RealmLoginState.AuthLoginPermit };
|
|
byte[] opcodeBuffer = new byte[1] { (byte)RealmLoginState.AuthLoginPermit };
|
|
|
await stream.WriteAsync(opcodeBuffer, 0, opcodeBuffer.Length);
|
|
await stream.WriteAsync(opcodeBuffer, 0, opcodeBuffer.Length);
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
string username = mainViewModel.Username;
|
|
string username = mainViewModel.Username;
|
|
|
username += new string(' ', 128 - username.Length);
|
|
username += new string(' ', 128 - username.Length);
|
|
|
byte[] usernameBuffer = System.Text.Encoding.Default.GetBytes(username);
|
|
byte[] usernameBuffer = System.Text.Encoding.Default.GetBytes(username);
|
|
|
await stream.WriteAsync(usernameBuffer, 0, usernameBuffer.Length);
|
|
await stream.WriteAsync(usernameBuffer, 0, usernameBuffer.Length);
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
MD5 md5 = new MD5CryptoServiceProvider();
|
|
MD5 md5 = new MD5CryptoServiceProvider();
|
|
|
byte[] password = System.Text.Encoding.Default.GetBytes(mainViewModel.Password);
|
|
byte[] password = System.Text.Encoding.Default.GetBytes(mainViewModel.Password);
|
|
|
byte[] passMD5Buffer = md5.ComputeHash(password);
|
|
byte[] passMD5Buffer = md5.ComputeHash(password);
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
string passMD5 = BitConverter.ToString(passMD5Buffer);
|
|
string passMD5 = BitConverter.ToString(passMD5Buffer);
|
|
|
passMD5 = passMD5.Replace("-", "");
|
|
passMD5 = passMD5.Replace("-", "");
|
|
|
passMD5 = passMD5.ToLower();
|
|
passMD5 = passMD5.ToLower();
|
|
|
App.Logger.Debug(string.Format("username: {0}, passMD5: {1}", username, passMD5));
|
|
App.Logger.Debug(string.Format("username: {0}, passMD5: {1}", username, passMD5));
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
passMD5Buffer = System.Text.Encoding.Default.GetBytes(passMD5);
|
|
passMD5Buffer = System.Text.Encoding.Default.GetBytes(passMD5);
|
|
|
- App.Logger.Debug("passMD5Buffer len: " + passMD5Buffer.Length.ToString());
|
|
|
|
|
await stream.WriteAsync(passMD5Buffer, 0, passMD5Buffer.Length);
|
|
await stream.WriteAsync(passMD5Buffer, 0, passMD5Buffer.Length);
|
|
|
|
|
|
|
|
await DispatcherHelper.UIDispatcher.InvokeAsync(new Action(() =>
|
|
await DispatcherHelper.UIDispatcher.InvokeAsync(new Action(() =>
|
|
|
{
|
|
{
|
|
|
mainViewModel.LoginInfo += "Login Permit!" + Environment.NewLine;
|
|
mainViewModel.LoginInfo += "Login Permit!" + Environment.NewLine;
|
|
|
|
|
+
|
|
|
|
|
+ // 让textbox自动向下滚动
|
|
|
|
|
+ Messenger.Default.Send(new NotificationMessage("ScrollDown"));
|
|
|
}));
|
|
}));
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|