private void SendLoginToUsers() { //2014.12.18. var bytes = new List <byte>(); //var tmpb = Encoding.Unicode.GetBytes(CurrentUser.IP.ToString()); //bytes.AddRange(BitConverter.GetBytes(tmpb.Length)); //bytes.AddRange(tmpb); for (int i = 0; i < UserInfo.KnownUsers.Count; i++) //Ha a count 0, nem fogja végrehajtani { bytes.AddRange(BitConverter.GetBytes(UserInfo.KnownUsers[i].UserID)); bytes.AddRange(BitConverter.GetBytes(UserInfo.KnownUsers[i].LastUpdate)); } //bytes.Add((Storage.Settings["isserver"] == "1") ? (byte)0x01 : (byte)0x00); //Mivel bejelentkezéstől függetlenül menti el, gépfüggő, hogy itt mit küld el //Networking.ParseUpdateInfo(Networking.SendUpdate(Networking.UpdateType.LoginUser, bytes.ToArray(), false)); Networking.SendUpdateInThread(Networking.UpdateType.LoginUser, bytes.ToArray(), new EventHandler <byte[][]>( (e, resp) => Networking.ParseUpdateInfo(resp))); }
public void SetOnlineState(object sender, EventArgs e) { int state = 0; if (sender == elérhetőToolStripMenuItem) { state = 1; } if (sender == elfoglaltToolStripMenuItem) { state = 2; } if (sender == nincsAGépnélToolStripMenuItem) { state = 3; } if (sender == null) //2014.08.30. - Erre nagyon sokáig nem volt felkészítve, és ezt kihasználtam a kijelentkezéshez { if (Networking.SendRequest("setstate", 0 + "", 0, true).Contains("Fail")) //Kijelentkezés - if: 2014.11.15. { MessageBox.Show(Language.Translate("error")); } //byte[] tmpb = Encoding.Unicode.GetBytes(CurrentUser.IP.ToString()); string str = ""; foreach (var ip in CurrentUser.IPs) { str += ip + ";"; } byte[] tmpb = Encoding.Unicode.GetBytes(str); byte[] sendb = new byte[4 + tmpb.Length]; Array.Copy(BitConverter.GetBytes(tmpb.Length), sendb, 4); Array.Copy(tmpb, 0, sendb, 4, tmpb.Length); //Networking.SendUpdate(Networking.UpdateType.LogoutUser, sendb, false); Networking.SendUpdateInThread(Networking.UpdateType.LogoutUser, sendb, null); CurrentUser.SendChanges = false; //2014.12.31. } CurrentUser.State = state; //2014.08.28. }