コード例 #1
0
ファイル: Frm_Server.cs プロジェクト: randianb/DownLoadDemo
        /// <summary>
        /// 向所有在线用户发送进入大厅及游戏的用户信息
        /// </summary>
        private void UpdateUserList(ClassMsg msg, System.Net.IPAddress Ip, int Port)
        {
            ClassUsers      Users      = new ClassUsers();
            ClassOptionData OptionData = new ClassOptionData();
            SqlDataReader   DataReader = OptionData.ExSQLReDr("Select * From tb_Gobang where (State>=" + Convert.ToInt32(MsgCommand.BeginToGame) + " and State<=" + Convert.ToInt32(MsgCommand.ExitToArea) + ")"); //查询进入大厅,或开始游戏的对象

            while (DataReader.Read())                                                                                                                                                                              //遍历所有用户
            {
                ClassUserInfo UserItem = new ClassUserInfo();                                                                                                                                                      //创建并引用ClassUserInfo类
                UserItem.UserID   = Convert.ToString(DataReader.GetInt32(0));                                                                                                                                      //记录用户用编号
                UserItem.UserIP   = DataReader.GetString(1);                                                                                                                                                       //记录用户的IP地址
                UserItem.UserPort = DataReader.GetString(2);                                                                                                                                                       //记录端口号
                UserItem.UserName = DataReader.GetString(3);                                                                                                                                                       //记录用户名称
                UserItem.Fraction = Convert.ToString(DataReader.GetInt32(5));                                                                                                                                      //当前分数
                UserItem.State    = Convert.ToString(DataReader.GetInt32(6));                                                                                                                                      //记录当前状态
                UserItem.Borough  = Convert.ToString(DataReader.GetInt32(7));                                                                                                                                      //区号
                UserItem.RoomMark = Convert.ToString(DataReader.GetInt32(8));                                                                                                                                      //房间号
                if (msg.msgCommand == MsgCommand.BeginToGame || DataReader.GetInt32(6) == Convert.ToInt32(MsgCommand.BeginToGame))
                {
                    UserItem.DeskMark    = DataReader.GetString(9);         //桌号
                    UserItem.SeatMart    = DataReader.GetString(10);        //坐位号
                    UserItem.UserCaption = DataReader.GetString(11);        //用户名
                }
                UserItem.Caput = Convert.ToString(DataReader.GetInt32(12)); //头像
                UserItem.Sex   = Convert.ToString(DataReader.GetInt32(13)); //头像
                Users.add(UserItem);                                        //将单用户信息添加到用户列表中
            }

            msg.Data       = new ClassSerializers().SerializeBinary(Users).ToArray();//将用户列表写入到二进制流中
            msg.msgCommand = MsgCommand.UserList;
            DataReader.Dispose();
            msg.msgCommand = MsgCommand.UserList;
            //udpSocket1.Send(Ip, Port, new ClassSerializers().SerializeBinary(msg).ToArray());
            MessColley(msg, Ip, Port, msg.msgCommand);//群发
        }
コード例 #2
0
        private void buttonExit_Click(object sender, EventArgs e)
        {
            ClassUsers classUsers = new ClassUsers();

            classUsers.logOut();
            Application.Restart();
        }
コード例 #3
0
 private void btnSave_Click(object sender, EventArgs e)
 {
     try
     {
         if (txtOld.Text.Equals("") || txtNew.Text.Equals("") || txtConfirm.Text.Equals(""))
         {
             MessageBox.Show("الرجاء ملىء جميع الحقول");
         }
         else
         {
             if (txtOld.Text == FRM_Main.emp_pass && txtNew.Text == txtConfirm.Text)
             {
                 int i = ClassUsers.changpassword(FRM_Main.emp_id, txtNew.Text);
                 FRM_Main.emp_pass = txtNew.Text;
                 MessageBox.Show("تم تغيير كلمة المرور بنجاح");
                 txtNew.Text = txtOld.Text = txtConfirm.Text = "";
                 Close();
             }
             else
             {
                 MessageBox.Show("المعلومات غير متطابقة");
             }
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show("هناك خطأ في البيانات المدخلة");
     }
 }
コード例 #4
0
ファイル: Frm_Hall.cs プロジェクト: randianb/DownLoadDemo
        /// <summary>
        /// 获取当前房间的用户信息
        /// </summary>
        /// <param Data="byte[]">数据流</param>
        /// <param Ip="System.Net.IPAddress ">IP地址</param>
        /// <param Port="int">端口号</param>
        private void GetUserList(byte[] Data, System.Net.IPAddress Ip, int Port)
        {
            ClassMsg msg = (ClassMsg) new ClassSerializers().DeSerializeBinary(new MemoryStream(Data));

            users = (ClassUsers) new ClassSerializers().DeSerializeBinary(new MemoryStream(msg.Data));//获取所有用户信息

            ClassUserInfo userItem = new ClassUserInfo();

            frmClient.Data_List(listView_user, Publec_Class.ClientName, Publec_Class.Fraction.ToString(), Publec_Class.CaputID.ToString());
            for (int i = 0; i < users.Count; i++)
            {
                userItem = users[i];
                if (userItem.Borough == Publec_Class.TAreaM.ToString() && userItem.RoomMark == Publec_Class.TRoomM.ToString())
                {
                    if (userItem.State == (Convert.ToInt32(MsgCommand.ComeToHall)).ToString())
                    {
                        if (Publec_Class.ClientName != userItem.UserName)
                        {
                            frmClient.Data_List(listView_user, userItem.UserName, userItem.Fraction, userItem.Caput);
                        }
                    }
                    if (userItem.State == (Convert.ToInt32(MsgCommand.BeginToGame)).ToString())
                    {
                        if (Publec_Class.ClientName != userItem.UserName)
                        {
                            frmClient.Data_List(listView_user, userItem.UserName, userItem.Fraction, userItem.Caput);
                            frmClient.UserAdd_List(flowPanel_Oppose, userItem, imageList1);
                        }
                    }
                }
            }
        }
コード例 #5
0
ファイル: F_Server.cs プロジェクト: SystemHe/project
        private void UpdateUserList(ClassMsg msg, System.Net.IPAddress Ip, int Port)
        {
            ClassUsers      Users      = new ClassUsers();
            ClassOptionData OptionData = new ClassOptionData();
            SqlDataReader   DataReader = OptionData.ExSQLReader("Select * From tb_CurreneyUser"); //查找所有注册的用户信息

            while (DataReader.Read())                                                             //遍历所有用户
            {
                ClassUserInfo UserItem = new ClassUserInfo();                                     //创建并引用ClassUserInfo类
                UserItem.UserID   = Convert.ToString(DataReader.GetInt32(0));                     //记录用户用编号
                UserItem.UserIP   = DataReader.GetString(1);                                      //记录用户的IP地址
                UserItem.UserPort = Convert.ToString(DataReader.GetInt32(2));                     //记录端口号
                UserItem.UserName = DataReader.GetString(3);                                      //记录用户名称
                UserItem.State    = Convert.ToString(DataReader.GetInt32(5));                     //记录当前状态
                Users.Add(UserItem);                                                              //将单用户信息添加到用户列表中
            }

            msg.Data = new ClassSerializers().SerializerBinary(Users).ToArray();//将用户列表写入到二进制流中
            //查找当前已上线的用户
            DataReader = OptionData.ExSQLReader("Select * From tb_CurreneyUser Where Sign = " + MsgCommand.Logined);
            while (DataReader.Read())//向所有上线用户发送用户列表
            {
                udpSocket1.Send(IPAddress.Parse(DataReader.GetString(1)), DataReader.GetInt32(2), new ClassSerializers().SerializerBinary(msg).ToArray());
            }
            OptionData.Dispose();
        }
コード例 #6
0
        private void GetUserList(byte[] Data, System.Net.IPAddress Ip, int Port)
        {
            ClassMsg msg = (ClassMsg) new ClassSerializers().DeSerializerBinary(new MemoryStream(Data));

            users = (ClassUsers) new ClassSerializers().DeSerializerBinary(new MemoryStream(msg.Data)); //获取所有用户信息
            treeView1.Nodes.Clear();                                                                    //清空所有节点
            for (int i = 0; i < users.Count; i++)                                                       //遍历所有用户
            {
                ClassUserInfo userItem = users[i];
                TreeNode      Node     = new TreeNode();
                Node.Text = userItem.UserName;                                   //获取当前用户的名称
                Node.Tag  = userItem;
                if (userItem.State == Convert.ToString((int)MsgCommand.Logined)) //当用户为上线状态
                {
                    Node.ImageIndex         = 1;                                 //设置上线用户的图片
                    Node.SelectedImageIndex = 1;
                }
                else
                {
                    Node.ImageIndex         = 0;//设置下线用户的图片
                    Node.SelectedImageIndex = 0;
                }
                treeView1.Nodes.Add(Node);
            }
        }
コード例 #7
0
        public ResultOfOperation UpdateInDataBase(ClassUsers user)
        {
            var result = new ResultOfOperation(false);

            try
            {
                using (var db = new Entities())
                {
                    var DBRow = db.PaidByUsTransaction.FirstOrDefault(x => x.Id == this.Id);
                    if (DBRow == null) //create new
                    {
                        DBRow = new Entity_Framework.PaidByUsTransaction();
                        db.PaidByUsTransaction.Add(DBRow);

                        DBRow.CreatedBy       = user.WorkerClockId;
                        DBRow.CreatedDateTime = DateTime.Now;
                        var log = PaidByUsCreditCardTransactionLog.First();
                        db.PaidByUsCreditCardTransactionLog.Add(log);
                        log.PaidByUsTransaction   = DBRow;
                        DBRow.OriginalAmount      = this.OriginalAmount;
                        DBRow.CustomerName        = this.CustomerName;
                        DBRow.BackOfficeCompany   = this.BackOfficeCompany;
                        DBRow.BillingAmount       = this.BillingAmount;
                        DBRow.BillingCurrencyCode = this.BillingCurrencyCode;
                        DBRow.Id                   = this.Id;
                        DBRow.Item                 = this.Item;
                        DBRow.ModifiedBy           = this.ModifiedBy;
                        DBRow.ModifiedDateTime     = this.ModifiedDateTime;
                        DBRow.OriginalCurrencyCode = this.OriginalCurrencyCode;
                        DBRow.Status               = this.Status;
                        DBRow.SupplierAccountNum   = this.SupplierAccountNum;
                        DBRow.SupplierName         = this.SupplierName;
                        DBRow.TripNumber           = this.TripNumber;
                    }
                    else //update
                    {
                        DBRow.ModifiedBy       = user.WorkerClockId;
                        DBRow.ModifiedDateTime = DateTime.Now;
                        foreach (var log in PaidByUsCreditCardTransactionLog)
                        {
                            var logDBRow = db.PaidByUsCreditCardTransactionLog.FirstOrDefault(x => x.id == log.id);
                            if (logDBRow != null)
                            {
                                logDBRow.Active = log.Active;
                            }
                        }
                    }
                    DBRow.Status = this.Status;
                    db.SaveChanges();
                    this.Id        = DBRow.Id;
                    result.Success = true;
                }
            }
            catch (Exception ex)
            {
                result.Message = ex.Message;
            }
            return(result);
        }
コード例 #8
0
ファイル: formUsers.cs プロジェクト: TonyBASHIZI/Storm-
        private void pictureBox2_Click(object sender, EventArgs e)
        {
            ClassUsers use = new ClassUsers();

            use.Username = textBox1.Text;
            use.Password = textBox2.Text;
            use.Nom      = textBox3.Text;
            use.Email    = textBox4.Text;
            glos.insertUsers(use);
        }
コード例 #9
0
        public ResultOfOperation ReplaceCard(PaidByUsTransactionDTO transaction, ClassUsers user, int cause)
        {
            var      creditcard        = new CreditCard();
            var      transactionLog    = new PaidByUsCreditCardTransactionLog();
            var      resultOfOperation = new ResultOfOperation();
            Entities dblog             = new Entities();

            var activeLog = dblog.PaidByUsCreditCardTransactionLog.FirstOrDefault(x => x.PaidByUsTransactionId == transaction.Id && x.Active.Value == true);

            if (activeLog == null)
            {
                resultOfOperation.Message = "Active Log Not found";
            }
            else
            {
                activeLog.ReplacementCause = cause;
                dblog.SaveChanges();
                try
                {
                    using (Entities db = new Entities())
                    {
                        var lasttransactionLog = db.PaidByUsCreditCardTransactionLog.FirstOrDefault(x => x.id == activeLog.id);
                        if (lasttransactionLog == null)
                        {
                            resultOfOperation.Message = "Active Log Not found in DB: " + activeLog.id;
                        }
                        else
                        {
                            lasttransactionLog.Active           = false;
                            lasttransactionLog.ReplacementCause = cause;
                            creditcard = ApllyGetCardAlgorithm(user.WorkerClockId, transaction);
                            //transactionLog.ImageName = creditcard.ComputeHashForImage();
                            transactionLog.Active = true;
                            transactionLog.PaidByUsTransactionId = transaction.Id;
                            transactionLog.CreditCardRecId       = creditcard.RecId;
                            //DB Operations
                            db.PaidByUsCreditCardTransactionLog.Add(transactionLog);
                            db.SaveChanges();
                            transaction.UpdateInDataBase(user);
                            resultOfOperation.Additional = transaction.Id.ToString();
                            resultOfOperation.Success    = true;
                        }
                    }
                }
                catch (Exception e)
                {
                    resultOfOperation.Success = false;
                    resultOfOperation.Message = e.Message;
                }
            }
            return(resultOfOperation);
        }
コード例 #10
0
        private void button2_Click_2(object sender, EventArgs e)
        {
            UserModel um = new UserModel();

            um.loggedUser = txt_username.Text;

            MessageBox.Show(um.loggedUser);

            ClassUsers cu = new ClassUsers();
            int        id = cu.UserID(um.loggedUser);

            MessageBox.Show(id.ToString());
        }
コード例 #11
0
 private void btnBackup_Click(object sender, EventArgs e)
 {
     try
     {
         string path = string.Format("{0}\\AllProducts-{1}{2}.bak", txtPath.Text, DateTime.Now.ToShortDateString().Replace('/', '-'),
                                     DateTime.Now.ToShortTimeString().Replace(':', '-'));
         ClassUsers.Back_up(path);
         MessageBox.Show("تم اخذ نسخة احتياطية");
     }
     catch (Exception ex)
     {
         MessageBox.Show("يرجى التخزين على قرص اخر مختلف عن قرص النظام ");
     }
 }
コード例 #12
0
ファイル: ClientClass.cs プロジェクト: randianb/DownLoadDemo
        /// <summary>
        /// 向对方发送本地用户的信息
        /// </summary>
        public ClassMsg Game_FarInfo(String G_ToIP)
        {
            ClassMsg      msg      = new ClassMsg();
            ClassUsers    Users    = new ClassUsers();
            ClassUserInfo UserItem = new ClassUserInfo();                             //创建并引用ClassUserInfo类

            UserItem.UserIP   = Publec_Class.ClientIP;                                //记录用户的IP地址
            UserItem.UserPort = Publec_Class.ServerPort;                              //记录端口号
            UserItem.UserName = Publec_Class.ClientName;                              //记录用户名称
            UserItem.Fraction = Publec_Class.Fraction.ToString();                     //当前分数
            UserItem.Caput    = Publec_Class.CaputID.ToString();                      //头像
            UserItem.Sex      = Publec_Class.UserSex.ToString();                      //头像
            Users.add(UserItem);                                                      //将单用户信息添加到用户列表中

            msg.Data       = new ClassSerializers().SerializeBinary(Users).ToArray(); //将用户列表写入到二进制流中
            msg.msgCommand = MsgCommand.EndRival;
            return(msg);
        }
コード例 #13
0
        private void btnSignIn_Click(object sender, EventArgs e)
        {
            DataTable dt = ClassUsers.selectAllEmp();

            if (txtUserName.Text.Equals("") || txtPassword.Text.Equals(""))
            {
                MessageBox.Show("الرجاء تعبئة كل الحقول");
            }
            else
            {
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    if (dt.Rows[i][1].Equals(txtUserName.Text))
                    {
                        if (dt.Rows[i][2].Equals(txtPassword.Text))
                        {
                            Close();
                            stateEnter                = "1";
                            FRM_Main.emp_id           = int.Parse(dt.Rows[i][0].ToString());
                            FRM_Main.emp_user         = dt.Rows[i][1].ToString();
                            FRM_Main.emp_pass         = dt.Rows[i][2].ToString();
                            FRM_Main.emp_fname        = dt.Rows[i][3].ToString();
                            FRM_Main.emp_lname        = dt.Rows[i][4].ToString();
                            FRM_Main.Qute_enter       = dt.Rows[i][5].ToString();
                            FRM_Main.Order_enter      = dt.Rows[i][6].ToString();
                            FRM_Main.Order_control    = dt.Rows[i][7].ToString();
                            FRM_Main.Order_management = dt.Rows[i][8].ToString();
                            FRM_Main.Order_view       = dt.Rows[i][9].ToString();
                            FRM_Main.Qute_management  = dt.Rows[i][10].ToString();
                            FRM_Main.Qute_view        = dt.Rows[i][11].ToString();
                            FRM_Main.emp_enter        = dt.Rows[i][12].ToString();
                            FRM_Main.emp_managment    = dt.Rows[i][13].ToString();
                            FRM_Main.Change_pass      = dt.Rows[i][14].ToString();
                            FRM_Main.Backup_data      = dt.Rows[i][15].ToString();
                        }
                    }
                }
                if (!stateEnter.Equals("1"))
                {
                    MessageBox.Show("اسم المستخدم أو كلمة السر غير صحيحة");
                    txtUserName.Text = txtPassword.Text = "";
                }
            }
        }
コード例 #14
0
ファイル: F_Server.cs プロジェクト: SystemHe/project
        /// <summary>
        /// 发送用户信息
        /// </summary>
        /// <param name="msg"></param>
        /// <param name="Ip"></param>
        /// <param name="Port"></param>
        private void SendUserList(ClassMsg msg, System.Net.IPAddress Ip, int Port)
        {
            ClassUsers      Users      = new ClassUsers();
            ClassOptionData OptionData = new ClassOptionData();
            SqlDataReader   DataReader = OptionData.ExSQLReader("Select * From tb_CurreneyUser");

            while (DataReader.Read())
            {
                ClassUserInfo UserItem = new ClassUserInfo();
                UserItem.UserID   = Convert.ToString(DataReader.GetInt32(0));
                UserItem.UserIP   = DataReader.GetString(1);
                UserItem.UserPort = Convert.ToString(DataReader.GetInt32(2));
                UserItem.UserName = DataReader.GetString(3);
                UserItem.State    = Convert.ToString(DataReader.GetInt32(5));
                Users.Add(UserItem);
            }
            OptionData.Dispose();
            msg.Data = new ClassSerializers().SerializerBinary(Users).ToArray();
            udpSocket1.Send(Ip, Port, new ClassSerializers().SerializerBinary(msg).ToArray());
        }
コード例 #15
0
        private void btnSignin_Click(object sender, EventArgs e)
        {
            DataTable dt = ClassUsers.sp_SelectAllUser();

            if (txtUserName.Text.Equals("") || txtPassword.Text.Equals(""))
            {
                MessageBox.Show("الرجاء تعبئة كل الحقول");
            }
            else
            {
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    if (dt.Rows[i][1].Equals(txtUserName.Text))
                    {
                        if (dt.Rows[i][2].Equals(txtPassword.Text))
                        {
                            Close();
                            stateEnter          = "1";
                            FRM_Main.FullName   = dt.Rows[i][3].ToString();
                            FRM_Main.UserName   = dt.Rows[i][1].ToString();
                            FRM_Main.U_Password = dt.Rows[i][2].ToString();
                            FRM_Main.u_id       = dt.Rows[i][0].ToString();

                            if (dt.Rows[i][4].Equals("admin"))
                            {
                                FRM_Main.Per = "admin";
                            }
                            if (dt.Rows[i][4].Equals("user"))
                            {
                                FRM_Main.Per = "user";
                            }
                        }
                    }
                }
                if (!stateEnter.Equals("1"))
                {
                    MessageBox.Show("اسم المستخدم أو كلمة السر غير صحيحة");
                    txtUserName.Text = txtPassword.Text = "";
                }
            }
        }
コード例 #16
0
 private void btnBackup_Click(object sender, EventArgs e)
 {
     try
     {
         if (!txtPath.Text.Equals(""))
         {
             string path = string.Format("{0}\\Control_Order-{1}{2}.bak", txtPath.Text, DateTime.Now.ToShortDateString().Replace('/', '-'),
                                         DateTime.Now.ToShortTimeString().Replace(':', '-'));
             ClassUsers.Back_up(path);
             MessageBox.Show("تم اخذ نسخة احتياطية");
         }
         else
         {
             MessageBox.Show("الرجاء اختيار مسار للتخزين");
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show("يرجى التخزين على قرص اخر مختلف عن قرص النظام ");
     }
 }
コード例 #17
0
 private void btnSave_Click(object sender, EventArgs e)
 {
     if (txtCurrent.Text.Equals("") || txtNew.Text.Equals("") || txtConfirm.Text.Equals(""))
     {
         MessageBox.Show("Please Fill All Fields");
     }
     else
     {
         if (txtCurrent.Text == FRM_MainForm.U_Password && txtNew.Text == txtConfirm.Text)
         {
             int i = ClassUsers.updatePassword(txtNew.Text, int.Parse(FRM_MainForm.u_id));
             FRM_MainForm.U_Password = txtNew.Text;
             MessageBox.Show("Done");
             txtConfirm.Text = txtCurrent.Text = txtNew.Text = "";
             Close();
         }
         else
         {
             MessageBox.Show("Wrong Data");
         }
     }
 }
コード例 #18
0
 private void btnSave_Click(object sender, EventArgs e)
 {
     if (txtCurrent.Text.Equals("") || txtNew.Text.Equals("") || txtConfirm.Text.Equals(""))
     {
         MessageBox.Show("الرجاء تعبئة كل الحقول");
     }
     else
     {
         if (txtCurrent.Text == FRM_Main.U_Password && txtNew.Text == txtConfirm.Text)
         {
             int i = ClassUsers.sp_changepassword(txtNew.Text, int.Parse(FRM_Main.u_id));
             FRM_Main.U_Password = txtNew.Text;
             MessageBox.Show("تمت العملية بنجاح");
             txtConfirm.Text = txtCurrent.Text = txtNew.Text = "";
             Close();
         }
         else
         {
             MessageBox.Show("هناك خطأ في البيانات المدخلة");
         }
     }
 }
コード例 #19
0
        private void Login()
        {
            ClassUsers classUsers = new ClassUsers();

            while (true)
            {
                int res = classUsers.Login();
                if (res == 0)
                {
                    MessageBox.Show("Не правильный логин или пароль!");
                }

                if (res == 1)
                {
                    break;
                }

                if (res == 2)
                {
                    Environment.Exit(0);
                }
            }
        }
コード例 #20
0
ファイル: Frm_Server.cs プロジェクト: randianb/DownLoadDemo
        /// <summary>
        /// 获取玩家的信息
        /// </summary>
        private void UserGame(ClassMsg msg, System.Net.IPAddress Ip, int Port, MsgCommand Nsign)
        {
            ClassUsers      Users      = new ClassUsers();
            ClassOptionData OptionData = new ClassOptionData();
            SqlDataReader   DataReader = OptionData.ExSQLReDr("Select * From tb_Gobang where (IP=" + msg.SIP.Trim() + ")"); //查询进入大厅,或开始游戏的对象

            DataReader.Read();                                                                                              //读取玩家信息

            ClassUserInfo UserItem = new ClassUserInfo();                                                                   //创建并引用ClassUserInfo类

            UserItem.UserIP   = DataReader.GetString(1);                                                                    //记录用户的IP地址
            UserItem.UserPort = DataReader.GetString(2);                                                                    //记录端口号
            UserItem.UserName = DataReader.GetString(3);                                                                    //记录用户名称
            UserItem.Fraction = Convert.ToString(DataReader.GetInt32(5));                                                   //当前分数
            UserItem.Caput    = Convert.ToString(DataReader.GetInt32(12));                                                  //头像
            UserItem.Sex      = Convert.ToString(DataReader.GetInt32(13));                                                  //头像
            Users.add(UserItem);                                                                                            //将单用户信息添加到用户列表中

            msg.Data       = new ClassSerializers().SerializeBinary(Users).ToArray();                                       //将用户列表写入到二进制流中
            msg.msgCommand = MsgCommand.EndRival;
            DataReader.Dispose();
            udpSocket1.Send(Ip, Port, new ClassSerializers().SerializeBinary(msg).ToArray());
        }
コード例 #21
0
        /// <summary>
        /// 更新用户列表
        /// </summary>
        /// <param name="msg"></param>
        /// <param name="ip"></param>
        /// <param name="port"></param>
        private void UpdateUserList(ClassMsg msg, IPAddress ip, int port)
        {
            ClassUsers      Users      = new ClassUsers();
            ClassOptionData OptionData = new ClassOptionData();
            DataTable       DataReader = OptionData.ExSQLReDr("select * from CurreneyUser");
            int             i          = 0;

            while (DataReader.Rows.Count != i)
            {
                DataRow dtr = DataReader.NewRow();
                dtr = DataReader.Rows[i];
                ClassUserInfo UserItem = new ClassUserInfo();           //创建并引用ClassUserInfo类
                UserItem.UserID   = dtr["ID"].ToString();               //记录用户用编号
                UserItem.UserIP   = dtr["IP"].ToString();               //记录用户的IP地址
                UserItem.UserPort = dtr["Port"].ToString();             //记录端口号
                UserItem.UserName = dtr["Name"].ToString();             //记录用户名称
                UserItem.State    = dtr["Sign"].ToString();             //记录当前状态
                Users.add(UserItem);                                    //将单用户信息添加到用户列表中
                i++;
            }

            BinaryFormatter serializer = new BinaryFormatter();
            MemoryStream    memStream  = new MemoryStream(); //创建一个内存流存储区

            serializer.Serialize(memStream, Users);          //将对象序列化为二进制流

            msg.Data = memStream.ToArray();                  //new ClassSerializers().SerializeBinary(Users).ToArray();//将用户列表写入到二进制流中
            //查找当前已上线的用户
            DataReader = OptionData.ExSQLReDr("Select * From CurreneyUser Where Sign = " + MsgCommand.Logined);
            i          = 0;
            while (DataReader.Rows.Count == i)//向所有上线用户发送用户列表
            {
                udpSocket1.Send(IPAddress.Parse(DataReader.Rows[i]["IP"].ToString()), Convert.ToInt16(DataReader.Rows[i]["Port"]), new ClassSerializers().SerializeBinary(msg).ToArray());
                i++;
            }
            OptionData.Dispose();
        }
コード例 #22
0
        /// <summary>
        /// 发送用户信息
        /// </summary>
        /// <param name="msg"></param>
        /// <param name="ip"></param>
        /// <param name="port"></param>
        private void SendUserList(ClassMsg msg, IPAddress ip, int port)
        {
            ClassUsers      Users      = new ClassUsers();
            ClassOptionData OptionData = new ClassOptionData();
            DataTable       DataReader = OptionData.ExSQLReDr("Select * From CurreneyUser");
            int             i          = 0;

            while (DataReader.Rows.Count != i)
            {
                DataRow dtr = DataReader.NewRow();
                dtr = DataReader.Rows[i];
                ClassUserInfo UserItem = new ClassUserInfo();           //创建并引用ClassUserInfo类
                UserItem.UserID   = dtr["ID"].ToString();               //记录用户用编号
                UserItem.UserIP   = dtr["IP"].ToString();               //记录用户的IP地址
                UserItem.UserPort = dtr["Port"].ToString();             //记录端口号
                UserItem.UserName = dtr["Name"].ToString();             //记录用户名称
                UserItem.State    = dtr["Sign"].ToString();             //记录当前状态
                Users.add(UserItem);                                    //将单用户信息添加到用户列表中
                i++;
            }
            OptionData.Dispose();
            msg.Data = new ClassSerializers().SerializeBinary(Users).ToArray();
            udpSocket1.Send(ip, port, new ClassSerializers().SerializeBinary(msg).ToArray());
        }
コード例 #23
0
ファイル: ClientClass.cs プロジェクト: randianb/DownLoadDemo
        /// <summary>
        /// 获取对方玩家的信息
        /// </summary>
        /// <param Data="byte[]">用户信息</param>
        public void Game_TerraInfo(byte[] Data)
        {
            ClassUsers users = new ClassUsers();
            ClassMsg   msg   = (ClassMsg) new ClassSerializers().DeSerializeBinary(new MemoryStream(Data));

            users = (ClassUsers) new ClassSerializers().DeSerializeBinary(new MemoryStream(msg.Data));//获取所有用户信息

            ClassUserInfo userItem = new ClassUserInfo();

            for (int i = 0; i < users.Count; i++)
            {
                userItem = users[i];
                if (userItem.UserIP != "")
                {
                    GameIP       = userItem.UserIP;   //记录用户的IP地址
                    GamePort     = userItem.UserPort; //记录用户的端口号
                    GameName     = userItem.UserName; //记录用户名称
                    GameFraction = userItem.Fraction; //当前分数
                    GameCaput    = userItem.Caput;    //头像
                    GameSex      = userItem.Sex;      //性别
                }
                break;
            }
        }
コード例 #24
0
        public ResultOfOperation CreateNewTransaction(PaidByUsTransactionDTO transaction, ClassUsers user)
        {
            var creditcard        = new CreditCard();
            var resultOfOperation = new ResultOfOperation();

            try
            {
                transaction.Status = (int)Amsalem.Types.Status.Pending;
                //Credit Card Operations
                creditcard = ApllyGetCardAlgorithm(user.WorkerClockId, transaction);

                //TransactionLog Initial
                var transactionLog = new PaidByUsCreditCardTransactionLog();
                transactionLog.Active = true;
                //transactionLog.PaidByUsTransactionId = transaction.Id;
                transactionLog.CreditCardRecId = creditcard.RecId;

                transaction.PaidByUsCreditCardTransactionLog = new List <PaidByUsCreditCardTransactionLog>();

                transaction.PaidByUsCreditCardTransactionLog.Add(transactionLog);

                //DB Operations
                transaction.UpdateInDataBase(user);

                resultOfOperation.Additional = transaction.Id.ToString();
                resultOfOperation.Success    = true;
            }

            catch (Exception e)
            {
                resultOfOperation.Success     = false;
                resultOfOperation.Additional4 = e.Message;
            }

            return(resultOfOperation);
        }
コード例 #25
0
        private void ToolStripMenuItemUsers_Click(object sender, EventArgs e)
        {
            ClassUsers classUsers = new ClassUsers();

            classUsers.showDialog();
        }
コード例 #26
0
        private void Frm_Chessboard_Shown(object sender, EventArgs e)
        {
            frmClient.Format_ListV(listView_Battle, imageList2);
            frmClient.Data_List(listView_Battle, Publec_Class.UserName, Publec_Class.Fraction.ToString(), Publec_Class.CaputID.ToString());
            label_N.Text       = Publec_Class.UserName;
            label_F.Text       = Publec_Class.Fraction.ToString();
            pictureBox_C.Image = null;
            if (Publec_Class.UserSex == 0)
            {
                pictureBox_C.Image = Image.FromFile(ClientClass.ImaDir + "\\Image\\男人.png");
            }
            else
            {
                pictureBox_C.Image = Image.FromFile(ClientClass.ImaDir + "\\Image\\女人.png");
            }

            GIP = ClientClass.GameIP.Trim();//IP地址
            if (GIP == "")
            {
                pictureBox2.Enabled = false;
                //label_Genre.Text = GIP;

                pictureBox_Left.Image  = null;
                pictureBox_Right.Image = null;
                if (Publec_Class.UserSex == 0)
                {
                    pictureBox_Right.Image = Image.FromFile(ClientClass.ImaDir + "\\Image\\男人.png");
                }
                else
                {
                    pictureBox_Right.Image = Image.FromFile(ClientClass.ImaDir + "\\Image\\女人.png");
                }
                label_Right.Text = Publec_Class.UserName;

                pictureBox_Q_Right.Image = null;
                pictureBox_Q_Right.Image = Image.FromFile(ClientClass.ImaDir + "\\Image\\黑棋.png");

                this.pictureBox2.Image   = null;
                this.pictureBox2.Image   = Image.FromFile(ClientClass.ImaDir + "\\Image\\开始按钮灰.png");
                this.pictureBox2.Enabled = false;
            }
            else
            {
                GetGameInfo(ClientClass.GameIP);
                ClassMsg      temMsg   = new ClassMsg();
                ClassUsers    Users    = new ClassUsers();
                ClassUserInfo UserItem = new ClassUserInfo();//创建并引用ClassUserInfo类

                pictureBox_Left.Image = null;
                if (Publec_Class.UserSex == 0)
                {
                    pictureBox_Left.Image = Image.FromFile(ClientClass.ImaDir + "\\Image\\男人.png");
                }
                else
                {
                    pictureBox_Left.Image = Image.FromFile(ClientClass.ImaDir + "\\Image\\女人.png");
                }
                pictureBox_Q_Left.Image = null;
                pictureBox_Q_Left.Image = Image.FromFile(ClientClass.ImaDir + "\\Image\\白棋.png");
                label_Left.Text         = Publec_Class.UserName;


                pictureBox_Right.Image = null;
                if (Gem_S == 0)
                {
                    pictureBox_Right.Image = Image.FromFile(ClientClass.ImaDir + "\\Image\\男人.png");
                }
                else
                {
                    pictureBox_Right.Image = Image.FromFile(ClientClass.ImaDir + "\\Image\\女人.png");
                }
                label_Right.Text = Gem_N;

                pictureBox_Q_Right.Image = null;
                pictureBox_Q_Right.Image = Image.FromFile(ClientClass.ImaDir + "\\Image\\黑棋.png");

                frmClient.Data_List(listView_Battle, Gem_N, Gem_F.ToString(), Gem_C.ToString());

                temMsg.sendKind   = SendKind.SendCommand;
                temMsg.msgCommand = MsgCommand.GetGameF;
                temMsg.RIP        = GIP;

                //原来是11000
                udpSocket1.Send(IPAddress.Parse(Publec_Class.ServerIP), 11001, new ClassSerializers().SerializeBinary(temMsg).ToArray());

                this.pictureBox2.Image   = null;
                this.pictureBox2.Enabled = true;
                this.pictureBox2.Image   = Image.FromFile(ClientClass.ImaDir + "\\Image\\开始按钮.png");

                UserItem.UserIP   = Publec_Class.ClientIP;            //记录用户的IP地址
                UserItem.UserPort = Publec_Class.ServerPort;          //记录端口号
                UserItem.UserName = Publec_Class.UserName;            //记录用户名称
                UserItem.Fraction = Publec_Class.Fraction.ToString(); //当前分数
                UserItem.Caput    = Publec_Class.CaputID.ToString();  //头像
                UserItem.Sex      = Publec_Class.UserSex.ToString();  //性别
                Users.add(UserItem);                                  //将单用户信息添加到用户列表中

                pictureBox2.Enabled = true;
                ThreadStart ts = new ThreadStart(this.StartServer);
                mainThread      = new Thread(ts);
                mainThread.Name = "GOB_Chess";
                LineName        = mainThread.Name;
                mainThread.Start();

                temMsg.Data       = new ClassSerializers().SerializeBinary(Users).ToArray();//将用户列表写入到二进制流中
                temMsg.msgCommand = MsgCommand.BeginJoin;
                udpSocket1.Send(IPAddress.Parse(GIP), 11001, new ClassSerializers().SerializeBinary(temMsg).ToArray());
                StartListen = true;
                ConnHandle  = 1;
            }
            panel_Check.Click += new EventHandler(asd);
            CanDown            = false;

            for (int i = 0; i < 15; i++)
            {
                for (int j = 0; j < 15; j++)
                {
                    note[i, j] = -1;
                }
            }
        }
コード例 #27
0
ファイル: Frm_Chessboard.cs プロジェクト: ROUSAN-TANG/habao
        private void Frm_Chessboard_Shown(object sender, EventArgs e)
        {
            frmClient.Format_ListV(listView_Battle, imageList2);    //对用户列表进行初始化
                                                                    //将当前用户的信息添加到用户列表中
            frmClient.Data_List(listView_Battle, Publec_Class.UserName, Publec_Class.Fraction.ToString(), Publec_Class.CaputID.ToString());
            label_N.Text       = Publec_Class.UserName;             //显示当前用户的名称
            label_F.Text       = Publec_Class.Fraction.ToString();  //显示当前用户的分数
            pictureBox_C.Image = null;                              //清空当前用户的头像
            if (Publec_Class.UserSex == 0)                          //如果当前用户是男性
            {
                pictureBox_C.Image = Image.FromFile(ClientClass.ImaDir + "\\Image\\男人.png");
            }
            else
            {
                pictureBox_C.Image = Image.FromFile(ClientClass.ImaDir + "\\Image\\女人.png");
            }
            GIP = ClientClass.GameIP.Trim();                    //获取对方玩家的相关信息
            if (GIP == "")                                      //如果为空,表示只有自已进入该桌
            {
                pboxStart.Enabled      = false;                 //使“开始”按钮不可用
                pictureBox_Left.Image  = null;                  //清空对决双方的头像图片
                pictureBox_Right.Image = null;
                if (Publec_Class.UserSex == 0)                  //如果当前用户是男性
                {
                    pictureBox_Right.Image = Image.FromFile(ClientClass.ImaDir + "\\Image\\男人.png");
                }
                else
                {
                    pictureBox_Right.Image = Image.FromFile(ClientClass.ImaDir + "\\Image\\女人.png");
                }
                label_Right.Text         = Publec_Class.UserName; //显示当前用户的名称
                pictureBox_Q_Right.Image = null;                  //清空显示棋子类型的图片
                                                                  //显示当前用户为黑棋
                pictureBox_Q_Right.Image = Image.FromFile(ClientClass.ImaDir + "\\Image\\黑棋.png");
                pboxStart.Image          = null;                  //清空“开始”按钮
                //使“开始”按钮为灰度显示
                pboxStart.Image   = Image.FromFile(ClientClass.ImaDir + "\\Image\\开始按钮灰.png");
                pboxStart.Enabled = false;                      //使“开始”按钮不可用
            }
            else
            {
                GetGameInfo(ClientClass.GameIP);                    //获取对方玩家的相关信息
                ClassMsg      temMsg   = new ClassMsg();
                ClassUsers    Users    = new ClassUsers();
                ClassUserInfo UserItem = new ClassUserInfo();       //创建并引用ClassUserInfo类
                pictureBox_Left.Image = null;                       //清空当前用户的头像
                if (Publec_Class.UserSex == 0)                      //如果当前用户是男性
                {
                    pictureBox_Left.Image = Image.FromFile(ClientClass.ImaDir + "\\Image\\男人.png");
                }
                else
                {
                    pictureBox_Left.Image = Image.FromFile(ClientClass.ImaDir + "\\Image\\女人.png");
                }
                pictureBox_Q_Left.Image = null;                  //清空当前用户的棋子类型
                                                                 //显示当前用户的棋子类型为白棋
                pictureBox_Q_Left.Image = Image.FromFile(ClientClass.ImaDir + "\\Image\\白棋.png");
                label_Left.Text         = Publec_Class.UserName; //显示当前用户的名称
                pictureBox_Right.Image  = null;                  //清空对方玩家的头像
                if (Gem_S == 0)                                  //如果对方玩家是男性
                {
                    pictureBox_Right.Image = Image.FromFile(ClientClass.ImaDir + "\\Image\\男人.png");
                }
                else
                {
                    pictureBox_Right.Image = Image.FromFile(ClientClass.ImaDir + "\\Image\\女人.png");
                }
                label_Right.Text         = Gem_N;                   //显示对方玩家的名称
                pictureBox_Q_Right.Image = null;                    //清空对方玩家的棋子类型
                pictureBox_Q_Right.Image = Image.FromFile(ClientClass.ImaDir + "\\Image\\黑棋.png");
                //将对方玩家的信息显示在用户列表中
                frmClient.Data_List(listView_Battle, Gem_N, Gem_F.ToString(), Gem_C.ToString());
                temMsg.sendKind   = SendKind.SendCommand;
                temMsg.msgCommand = MsgCommand.GetGameF;
                temMsg.RIP        = GIP;

                //原来是11000
                udpSocket1.Send(IPAddress.Parse(Publec_Class.ServerIP), 11001, new ClassSerializers().SerializeBinary(temMsg).ToArray());
                pboxStart.Image   = null;                             //清空“开始”按钮
                pboxStart.Enabled = true;                             //使“开始”按钮可用
                                                                      //加载“开始”按钮的可用图片
                pboxStart.Image   = Image.FromFile(ClientClass.ImaDir + "\\Image\\开始按钮.png");
                UserItem.UserIP   = Publec_Class.ClientIP;            //记录用户的IP地址
                UserItem.UserPort = Publec_Class.ServerPort;          //记录端口号
                UserItem.UserName = Publec_Class.UserName;            //记录用户名称
                UserItem.Fraction = Publec_Class.Fraction.ToString(); //当前分数
                UserItem.Caput    = Publec_Class.CaputID.ToString();  //头像
                UserItem.Sex      = Publec_Class.UserSex.ToString();  //性别
                Users.add(UserItem);                                  //将单用户信息添加到用户列表中
                pboxStart.Enabled = true;
                ThreadStart ts = new ThreadStart(this.StartServer);   //开启服务
                mainThread      = new Thread(ts);
                mainThread.Name = "GOB_Chess";
                LineName        = mainThread.Name;
                mainThread.Start();                             //连接服务
                                                                //将用户列表写入二进制流中
                temMsg.Data       = new ClassSerializers().SerializeBinary(Users).ToArray();
                temMsg.msgCommand = MsgCommand.BeginJoin;       //设置发送的消息命令
                                                                //将当前用户的信息发送给对方玩家
                udpSocket1.Send(IPAddress.Parse(GIP), 11001, new ClassSerializers().SerializeBinary(temMsg).ToArray());
                StartListen = true;
                ConnHandle  = 1;
            }
            panel_Check.Click += new EventHandler(asd);         //加载棋盘的单击事件
            CanDown            = false;
            for (int i = 0; i < 15; i++)                        //对棋子的记录位置进行初始化
            {
                for (int j = 0; j < 15; j++)
                {
                    note[i, j] = -1;
                }
            }
        }
コード例 #28
0
        private void DataArrival(byte[] Data, System.Net.IPAddress Ip, int Port) //当有数据到达后的处理进程
        {
            try
            {
                //string Tem_Gip = "";
                ClassMsg msg = (ClassMsg) new ClassSerializers().DeSerializeBinary(new MemoryStream(Data));
                switch (msg.msgCommand)
                {
                case MsgCommand.BeginJoin:                                                                     //进入大厅获取在线用户列表
                {
                    users = (ClassUsers) new ClassSerializers().DeSerializeBinary(new MemoryStream(msg.Data)); //获取所有用户信息
                    ClassUserInfo UserItem = new ClassUserInfo();
                    UserItem = users[0];
                    GIP      = UserItem.UserIP;                    //记录用户的IP地址
                    GPort    = UserItem.UserPort;                  //记录端口号
                    Gem_N    = UserItem.UserName;                  //记录用户名称
                    Gem_F    = Convert.ToInt32(UserItem.Fraction); //当前分数
                    Gem_C    = Convert.ToInt32(UserItem.Caput);    //头像
                    Gem_S    = Convert.ToInt32(UserItem.Sex);      //性别

                    ThreadStart ts = new ThreadStart(this.StartServer);
                    mainThread      = new Thread(ts);
                    mainThread.Name = "GOB_Chess";
                    LineName        = mainThread.Name;
                    mainThread.Start();
                    StartListen = true;
                    ConnHandle  = 1;

                    label_Left.Text = Gem_N;
                    frmClient.Data_List(listView_Battle, Gem_N, Gem_F.ToString(), Gem_C.ToString());

                    pictureBox_Left.Image = null;
                    if (Gem_S == 0)
                    {
                        pictureBox_Left.Image = Image.FromFile(ClientClass.ImaDir + "\\Image\\男人.png");
                    }
                    else
                    {
                        pictureBox_Left.Image = Image.FromFile(ClientClass.ImaDir + "\\Image\\女人.png");
                    }

                    pictureBox_Q_Left.Image = Image.FromFile(ClientClass.ImaDir + "\\Image\\黑棋.png");

                    this.pictureBox2.Image   = null;
                    this.pictureBox2.Enabled = true;
                    this.pictureBox2.Image   = Image.FromFile(ClientClass.ImaDir + "\\Image\\开始按钮.png");
                    break;
                }

                case MsgCommand.OddLittle:
                {
                    richTextBox1.ReadOnly  = true;            //设为只读
                    richTextBox1.ForeColor = Color.SlateGray; //设置字体颜色
                    richTextBox1.AppendText(msg.UserName);    //添加发送信息的用户名
                    richTextBox1.AppendText("\r\n");          //换行
                    richTextBox1.AppendText(msg.MsgText);     //添加发送的信息
                    richTextBox1.AppendText("\r\n");          //换行
                    richTextBox1.ScrollToCaret();             //将信息添加到控件
                    break;
                }

                case MsgCommand.GetGameF:
                {
                    Gem_N = msg.Fraction.ToString();
                    for (int i = 0; i < listView_Battle.Items.Count; i++)
                    {
                        if (listView_Battle.Items[i].SubItems[1].Text.Trim() == Gem_N.Trim())
                        {
                            listView_Battle.Items[i].SubItems[2].Text = Gem_N;
                        }
                    }
                    break;
                }

                case MsgCommand.ExitJoin:
                {
                    if (label_Left.Text.Trim() == Publec_Class.UserName)
                    {
                        pictureBox_Q_Right.Image = null;
                        pictureBox_Right.Image   = null;
                        label_Right.Text         = "";
                    }
                    else
                    {
                        pictureBox_Q_Left.Image = null;
                        pictureBox_Left.Image   = null;
                        label_Left.Text         = "";
                    }
                    GIP = "";
                    int ListCount = listView_Battle.Items.Count;
                    for (int i = 0; i < ListCount; i++)
                    {
                        if (listView_Battle.Items[i].SubItems[1].Text.Trim() == Gem_N.Trim())
                        {
                            listView_Battle.Items[i].Remove();
                            i         = i - 1;
                            ListCount = ListCount - 1;
                        }
                    }
                    CanAgins = false;
                    CanAgin  = true;
                    Agin();

                    this.pictureBox2.Image = null;
                    this.pictureBox2.Image = Image.FromFile(ClientClass.ImaDir + "\\Image\\开始按钮灰.png");
                    dropchild = true;

                    if (listener != null)
                    {
                        listener.Close();
                    }
                    if (mainThread != null)
                    {
                        Thread.Sleep(30);               //睡眠主线程
                        mainThread.Abort();             //关闭子线程
                    }

                    break;
                }
                }
            }
            catch { }
        }