Esempio n. 1
0
        private void lab_MouseClick(object sender, MouseEventArgs e)
        {
            MyLable lab = sender as MyLable;

            //得到配置文件信息
            List <string> cfg = AnalyzerCfg.toolDict[lab.Text.Trim()];

            // 所需分析的文件列表
            List <string> fileNameList = new List <string>();

            string dictName = Environment.CurrentDirectory + "\\" + userid + "_" + date + ".dict";

            if (!File.Exists(dictName))
            {
                MessageBox.Show("This trial didn't have the .dict file!", "error");
                return;
            }
            FileStream   fs   = new FileStream(dictName, FileMode.Open);
            StreamReader sr   = new StreamReader(fs);
            string       line = null;

            while ((line = sr.ReadLine()) != null && !line.Equals(""))
            {
                fileNameList.Add(line);
            }
            sr.Close();
            fs.Close();

            string[]      filekeywords = (cfg[2] + ",").Split(',');
            List <string> findFileIds  = new List <string>(); //

            foreach (string str in filekeywords)
            {
                //分割keywords[] 去find文件
                findAnalyzeFileId(str.Split(':').ToList(), fileNameList, findFileIds);
            }

            if (findFileIds.Count == 0)
            {
                MessageBox.Show("Didn't find any file for tfc analyze!", "operator error");
                return;
            }

            if (findFileIds.Count > 0)
            {
                foreach (string id in findFileIds)
                {
                    MyLogger.WriteLine("find id:" + id);
                }

                //GetCsvSock 获取要下载的文件
                ImpAnalyzeCsvDnlded callback = new ImpAnalyzeCsvDnlded();
                callback.AnalyzeName = lab.Text.Trim();
                callback.Parent      = parent;
                GetCsvSock.dnldFiles(userid, date, null, findFileIds, false, callback);
            }
        }
Esempio n. 2
0
        // 下载按钮,点击后遍历listview 中的选中项,然后下载
        private void picboxDnld_Click(object sender, EventArgs e)
        {
            MyLogger.WriteLine("download list:");
            List <string> dnldFileIdList = new List <string>();

            foreach (ListViewItem item in listView1.CheckedItems)
            {
                dnldFileIdList.Add(item.SubItems[0].Text); // subitems[0]:fileid  [1]:filename
                MyLogger.WriteLine(item.SubItems[0].Text + " +++ " + item.SubItems[1].Text);
            }

            //先判断txtDnldFolder是否有目录
            if (!txtDnldFolder.Text.Trim().Equals(""))
            {
                if (dnldFileIdList.Count >= 1)
                {
                    //开始下载
                    GetCsvSock.dnldFiles(userid, date, dnldFolder, dnldFileIdList, true, null);
                }
                else
                {
                    MessageBox.Show("Please at least 1 file to download!", "operator error!");
                }

                //重置list选中状态
                for (int i = 0; i < listView1.Items.Count; i++)
                {
                    listView1.Items[i].Checked = false;
                }
                labSelectNum.Text = listView1.CheckedItems.Count + "";
            }
            else
            {
                MessageBox.Show("Please choose a download folder!", "download deny");
            }
        }
Esempio n. 3
0
        //查看该trial
        private void MyTrial_Click(object sender, EventArgs e)
        {
            fmMain.pmCurPan     += 1;
            fmMain.pmCurLab     += 1;
            Cache.trialUniqueStr = trialUniqStr;
            fmMain.setCurPmLab();
            fmMain.setCurPmPan();

            //清空datagridview中的数据
            fmMain.clearGridView();

            //还要为下面的pmHeads 中的数据显示做准备
            fmMain.pmHeadShowTrial = trial;
            fmMain.Refresh();

            //连接socket 获取该trial的summary.csv 文件 先
            //获取到的summary.csv 文件会先保存在 当前软件目录下并以 userid_datestr.csv 的形式保存
            string   uniqStr = trial.TrUserId + "_" + trial.TrDate;
            FileInfo csvFile = new FileInfo(Environment.CurrentDirectory + "\\" + uniqStr + "_0" + ".csv");

            //if (!csvFile.Exists)
            //{
            GetCsvSock.dnldCsvFile(trial.TrUserId, trial.TrDate, 0);
            fmMain.setSumFileComb(0);     //设置初始的summary1.csv
            //}

            /*else //文件存在
             * {
             *  try
             *  {
             *      String line;
             *      String[] split = null;
             *      DataTable table = new DataTable();
             *      DataRow row = null;
             *
             *      StreamReader sr = new StreamReader(csvFile.FullName, Encoding.Default);
             *      //创建与数据源对应的数据列
             *      line = sr.ReadLine();
             *      split = line.Split(',');
             *      foreach (String colname in split)
             *      {
             *          table.Columns.Add(colname, System.Type.GetType("System.String"));
             *      }
             *      //将数据填入数据表
             *      int j = 0;
             *      while ((line = sr.ReadLine()) != null)
             *      {
             *          j = 0;
             *          row = table.NewRow();
             *          split = line.Split(',');
             *          foreach (String colname in split)
             *          {
             *              row[j] = colname;
             *              j++;
             *          }
             *          table.Rows.Add(row);
             *      }
             *      sr.Close();
             *      //使用代理更新FmMain 中的DataGridView
             *      fmMain.showDataview(table.DefaultView);
             *  }
             *  catch (Exception vErr)
             *  {
             *      MessageBox.Show(vErr.Message);
             *  }
             *  finally
             *  {
             *      GC.Collect();
             *  }
             * }*/

            // 判断dict 文件是否存在
            if (!File.Exists(Environment.CurrentDirectory + "\\" + uniqStr + ".dict"))  //不存在,在getcsvSock 中更新可用
            {
                fmMain.disablePic();
            }
            else
            {
                fmMain.enablePic();
            }


            #region 行不通的方法
            //try 第二种方法

            /*
             * {
             *  Socket csvSock = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
             *  IPAddress ip = IPAddress.Parse(ContantInfo.SockServ.ip);
             *  csvSock.Connect(ip, Int32.Parse(ContantInfo.SockServ.port));
             *
             *  Thread csvRecvMsgTh = new Thread(csvRecv);
             *  csvRecvMsgTh.IsBackground = false;
             *  csvRecvMsgTh.Start(csvSock);
             *  MyLogger.WriteLine("csv 监听消息线程:" + csvRecvMsgTh.ToString());
             * }
             * catch
             * {
             *
             * }*/
            #endregion
        }