public void ReceivePackets()
    {
        isRunning = true;
        byte[] receive_byte_array;

            while (isRunning)
            {
                if (listener.Available > 0) {
                    receive_byte_array = listener.Receive(ref groupEP);
                    //receiveData = Encoding.ASCII.GetString(receive_byte_array, 0, receive_byte_array.Length);
                    receiveData = new DataPack(receive_byte_array);
                    DataPackList.Add(receiveData);
                    Console.WriteLine(receiveData.ToString());
                }
            }

        listener.Close();
    }
    public void ReceivePackets()
    {
        isRunning = true;
        byte[] receive_byte_array;

            while (isRunning)
            {
                if (listener.Available > 0) {
                    receive_byte_array = listener.Receive(ref groupEP);
                    //receiveData = Encoding.ASCII.GetString(receive_byte_array, 0, receive_byte_array.Length);
                    receiveData = new DataPack(receive_byte_array);
                    DataPackList.Add(receiveData);
                    Console.WriteLine(receiveData.ToString());

                    object[] myArray = new object[2];

                    myArray[0] = "Odebrany pakiet:\n" + receiveData.ToString();
                    myArray[1] = "server";
                    parent.BeginInvoke(new MyDelegate(DelegateMethod), myArray);
            }
            }

        listener.Close();
    }
Пример #3
0
        /// <summary>
        /// 创建新的文档
        /// </summary>
        /// <param name="data"></param>
        /// <returns></returns>
        private int CreateNewArchive(int categoryId, string content, string thumbnail, string author, string flag, DataPack data)
        {
            ArchiveDto archive = new ArchiveDto
            {
                Agree = 0,
                Disagree = 0,
                Category = new CategoryDto { Id = categoryId },
                Flags = flag,
                Author = author,
                Tags = String.Empty,
                Outline = String.Empty,
                Source = String.Empty,
                Title = data["title"],
                Content = content,
                LastModifyDate = DateTime.Now,
                CreateDate = DateTime.Now,
                Thumbnail = thumbnail
            };

            return ServiceCall.Instance.ArchiveService.SaveArchive(this.siteId, archive);
        }
Пример #4
0
        /// <summary>
        /// ��ȡһ��ҳ������ݲ�����
        /// </summary>
        /// <param name="pageUri">ҳ���ַ</param>
        /// <param name="number">ά��һ������,�ж������Ƿ����</param>
        /// <returns></returns>
        private DataPack GetPageData(string pageUri, ref int number, DataPackFunc func)
        {
            DataPack dp;
            int bufferLength = 10;
            byte[] buffer = new byte[bufferLength]; //���ص����ݻ�����
            StringBuilder sb = new StringBuilder(); //���췵�صĽ��
            Match match; //����ƥ��

            //ҳ���ַ��ҳ���ַ����ƥ�䣡

            if (!Regex.IsMatch(pageUri, this.FormatedPageUriRule))
            {
                ++number;
                state.FailCount++;
                return null;

                //throw new ArgumentException("ҳ���ַ��ҳ���ַ����ƥ�䣡", pageUri);
            }

            //���ҳ���ַΪ���·�������������
            if (absoluteUriRegex.IsMatch(pageUri)) pageUri = GetBasePath(pageUri) + pageUri;

            //����ҳ���HTML
            string html = String.Empty;

            try
            {
                HttpWebRequest req = (HttpWebRequest) WebRequest.Create(pageUri);
                req.Timeout = this.RequestTimeOut;

                Stream stream = req.GetResponse().GetResponseStream();

                html = sb.ToString();
                using (StreamReader sr = new StreamReader(stream, this.Encode))
                {
                    html = sr.ReadToEnd();
                }
            }
            catch (Exception exc)
            {
                state.FailCount++;
                return null;
            }

            //������ص�����
            #if DEBUG
            Console.WriteLine("\r\n------------------------------\r\n�õ�ƥ����б�����Ϊ:{0}",html);
            #endif
            dp = new DataPack(Rules, pageUri);

            foreach (string propertyName in this.Rules)
            {
                match = Regex.Match(html, this.Rules[propertyName]);
                if (match != null)
                {
                    dp[propertyName] = match.Groups[1].Value;
                }
            }

            #if DEBUG
            Console.WriteLine("\r\n-------------------------\r\n");
            foreach (KeyValuePair<string, string> pair in dp)
            {
                Console.WriteLine("{0}->{1}\r\n", pair.Key, pair.Value);
            }
            #endif

            //���¼���
            ++number;

            #if DEBUG
            Console.WriteLine("flish");
            #endif
            //ִ�л�ִ����
            if (func != null) func(dp);

            //���һ���ɹ��ļ���
            state.SuccessCount++;

            return dp;
        }
Пример #5
0
 /// <summary>
 /// LOGISTICS FORM307 BOTTOM 대입값 가져오기
 /// </summary>
 /// <param name="oDataPack"></param>
 /// <returns></returns>
 public DataSet GetLMSForm307Bottom(DataPack oDataPack)
 {
     return(OraDBHelper.ExecuteDataSet("LMSP_GET_FRM307_BOTTOM_Q", oDataPack));
 }
Пример #6
0
        /// <summary>
        /// 创建新的文档
        /// </summary>
        /// <param name="data"></param>
        /// <returns></returns>
        private int CreateNewArchive(DataPack data)
        {
            bool visible = request.Form["visible"] == "on";
            int categoryID = int.Parse(request.Form["category"]);
            string author = UserState.Administrator.Current.UserName;

            //string[,] flags;
            string flags = ArchiveFlag.GetFlagString(false, false, visible, false, null);

            ArchiveDto archive = new ArchiveDto
            {
                Agree = 0,
                Disagree = 0,
                Category = new CategoryDto {ID = categoryID},
                Flags = flags,
                Author = author,
                Tags = String.Empty,
                Outline = String.Empty,
                Source = String.Empty,
                Title = data["title"],
                Content = ReplaceContent(data["content"]),
                CreateDate = DateTime.Now
            };

            return ServiceCall.Instance.ArchiveService.SaveArchive(this.siteId, archive);
        }
Пример #7
0
 /// <summary>
 /// FORM306 Grid Data.
 /// </summary>
 /// <param name="oDataPack"></param>
 /// <returns></returns>
 public DataSet GetLMSForm306List(DataPack oDataPack)
 {
     return(OraDBHelper.ExecuteDataSet("LMSP_GET_FRM306LIST_Q", oDataPack));
 }
Пример #8
0
 /// <summary>
 /// LOGISTICS FORM307 LongThanh - Outgoing 가져오기
 /// </summary>
 /// <param name="oDataPack"></param>
 /// <returns></returns>
 public DataSet GetLMSForm307LONGTHANHOut(DataPack oDataPack)
 {
     return(OraDBHelper.ExecuteDataSet("LMSP_GET_FRM307_LONGTHOUT_Q", oDataPack));
 }
Пример #9
0
 /// <summary>
 /// get Refresh time
 /// </summary>
 /// <param name="oDataPack"></param>
 /// <returns></returns>
 public DataSet GetLMSFormQueryTime(DataPack oDataPack)
 {
     return(OraDBHelper.ExecuteDataSet("LMSP_GET_CPSFORM_QUERYTIME_Q", oDataPack));
 }
Пример #10
0
 public DataSet GetLMSFormList(DataPack oDataPack)
 {
     return(OraDBHelper.ExecuteDataSet("LMSP_GET_CPSFORMLIST_Q", oDataPack));
 }
Пример #11
0
 public DataSet GetTest(DataPack oDataPack)
 {
     return(OraDBHelper.ExecuteDataSet("GETTEST", oDataPack));
 }
Пример #12
0
        private void textBoxData_TextChanged(object sender, EventArgs e)
        {
            Regex           regex = new Regex(@"<l><n>(?<num>\d+)</n></l>", RegexOptions.Multiline);
            string          data  = textBoxData.Text;
            MatchCollection col   = regex.Matches(data);

            foreach (Match mat in col)
            {
                string   cap  = mat.Groups["num"].Value;
                DataPack pack = DataPackBook.GetPack("npc");
                int      info = int.Parse(cap);
                if (pack.data.ContainsKey(info))
                {
                    cap = pack.data[info][1];
                }
                data = data.Replace(mat.Value, String.Format("[{0}]", cap));
            }

            regex = new Regex(@"<l><g>(?<num>\d+)</g></l>", RegexOptions.Multiline);
            col   = regex.Matches(data);
            foreach (Match mat in col)
            {
                string   cap   = mat.Groups["num"].Value;
                DataPack pack  = DataPackBook.GetPack("monster");
                int      index = pack.GetPackIndexByName("group_id");
                foreach (List <String> monsterData in pack.data.Values)
                {
                    if (monsterData[index] == cap)
                    {
                        cap = monsterData[1];
                        break;
                    }
                }
                data = data.Replace(mat.Value, String.Format("[{0}]", cap));
            }

            regex = new Regex(@"<l><z>(?<num>\d+)</z></l>", RegexOptions.Multiline);
            col   = regex.Matches(data);
            foreach (Match mat in col)
            {
                string   cap   = mat.Groups["num"].Value;
                DataPack pack  = DataPackBook.GetPack("plant");
                int      index = pack.GetPackIndexByName("group_id");
                foreach (List <String> plantData in pack.data.Values)
                {
                    if (plantData[index] == cap)
                    {
                        cap = plantData[1];
                        break;
                    }
                }
                data = data.Replace(mat.Value, String.Format("[{0}]", cap));
            }

            regex = new Regex(@"<l><f>(?<num>\d+)</f></l>", RegexOptions.Multiline);
            col   = regex.Matches(data);
            foreach (Match mat in col)
            {
                string   cap  = mat.Groups["num"].Value;
                DataPack pack = DataPackBook.GetPack("dungeon");
                int      info = int.Parse(cap);
                if (pack.data.ContainsKey(info))
                {
                    cap = pack.data[info][1];
                }
                data = data.Replace(mat.Value, String.Format("[{0}]", cap));
            }

            regex = new Regex("<l><d m=\"\\d+\" x=\"\\d+\" y=\"\\d+\">(?<name>\\w+)</d></l>", RegexOptions.Multiline);
            col   = regex.Matches(data);
            foreach (Match mat in col)
            {
                string cap = mat.Groups["name"].Value;
                data = data.Replace(mat.Value, String.Format("[{0}]", cap));
            }

            richTextBox1.Text = "";
            richTextBox1.Text = data;

            int baseq = 0;

            while (true)
            {
                int start = richTextBox1.Text.IndexOf("[", baseq);
                int end   = richTextBox1.Text.IndexOf("]", baseq);
                if (start == -1)
                {
                    break;
                }

                if (start >= 0 && end >= 0)
                {
                    richTextBox1.Select(start, end - start + 1);
                    richTextBox1.SelectionColor = Color.Blue;
                    richTextBox1.Select(start, 0);
                }
                baseq = end + 1;
            }
        }
Пример #13
0
 public void ReceiveData(DataPack pack, string eventName)
 {
 }
Пример #14
-2
        private static void Test()
        {
            PropertyRule rule = new PropertyRule();
            rule.Add("title", "^title$");
            rule.Add("content", "^content$");

            DataPack pack = new DataPack(rule,"");

            foreach (KeyValuePair<string, string> pair in pack)
            {

                Console.WriteLine(pair.Key + "->" + pair.Value);
            }
        }