Exemple #1
0
        private void textBox_Username_Leave(object sender, EventArgs e)
        {
            tagSetting setting = Appinfo.QuerySetting();

            GetSetting(setting);
            Appinfo.UpdateSetting(setting);
        }
Exemple #2
0
 private void button_reconnect_Click(object sender, EventArgs e)
 {
     Disconnect();
     string     msg     = null;
     tagSetting setting = Appinfo.QuerySetting();
     bool       isok    = Connect(define.GetEnumName(setting.connectionType), setting.strUsername.ToString(), setting.strPwd.ToString(), ref msg);
 }
Exemple #3
0
        private void listView_statistics_DoubleClick(object sender, EventArgs e)
        {
            ListView listView = sender as ListView;

            if (listView.SelectedItems.Count > 0)                        //判断listview有被选中项
            {
                int    nIndex = listView.SelectedItems[0].Index;         //取当前选中项的index,SelectedItems[0]这必须为0
                string strID  = listView.Items[nIndex].SubItems[1].Text; //用我们刚取到的index取被选中的某一列的值从0开始

                tagTask task = Appinfo.QueryTask(int.Parse(strID));
                if (task != null)
                {
                    task.taskAcion = eTaskAcion.Change;
                    ChangeTaskEvent(this, new AppEventArgs()
                    {
                        message_task = task
                    });
                }
                else
                {
                    MessageBox.Show("打开任务失败", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
            }
            else
            {
                MessageBox.Show("选择一项任务", "警告", MessageBoxButtons.OK,
                                MessageBoxIcon.Warning);
            }
        }
Exemple #4
0
        private void checkBox_work_CheckedChanged(object sender, EventArgs e)
        {
            tagSetting setting = Appinfo.QuerySetting();

            if (setting.strUsername.Trim().Equals("") || setting.strPwd.Trim().Equals(""))
            {
                MessageBox.Show("ADSL拨号未设置账号密码", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }
            if (!checkBox_work.Checked)
            {
                checkBox_work.Text = "开始挂机";
                AppUtils.CloseOtherApp("流量精灵助手监控器");
            }
            else
            {
                checkBox_work.Text = "停止挂机";
                if (AppUtils.OpenExternalApp("RankHelperService.exe") == 42)
                {
                }
                else if (AppUtils.OpenExternalApp("RankHelperService") == 42)
                {
                }
            }
            DoAsyncEvent();
            //IAsyncResult result = del.BeginInvoke(new AsyncCallback(CallBack), null);
        }
Exemple #5
0
        private void button_Change_Click(object sender, EventArgs e)
        {
            GetTask(currentTask);
            if (!CheckVaild(currentTask))
            {
                return;
            }

            currentTask.taskAcion = eTaskAcion.Change;

            if (!Appinfo.ChangeTask(currentTask))
            {
                MessageBox.Show("未找到符合的任务", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }

            RefreshStatisticsEvent(this, new AppEventArgs()
            {
                message_task = currentTask
            });
            string strInfo;

            strInfo = string.Format("修改任务完毕,编号{0}", currentTask.nID);
            MessageBox.Show(strInfo, "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
            InitData();
        }
Exemple #6
0
        private void checkBox_AutoStart_CheckedChanged(object sender, EventArgs e)
        {
            AppUtils.AutoStart(checkBox_AutoStart.Checked);
            tagSetting setting = Appinfo.QuerySetting();

            GetSetting(setting);
            Appinfo.UpdateSetting(setting);
        }
Exemple #7
0
 public void Init()
 {
     //设置标题
     //this.Text = string.Format("{0} (版本{1})", Appinfo.strTitleName, Appinfo.strVersion);
     this.Text            = string.Format("{0}", Appinfo.strTitleName);
     this.FormBorderStyle = FormBorderStyle.FixedSingle;
     Appinfo.Init();
     toolStripStatusLabel_Status.Text = "未开始挂机";
 }
Exemple #8
0
        void InitData()
        {
            tagSetting setting = Appinfo.QuerySetting();

            if (setting == null)
            {
                setting = new tagSetting();
            }
            SetSetting(setting);
        }
Exemple #9
0
        public static void AddTask(tagTask task)
        {
            //int nID = 0;
            //for (int i = Appinfo.listTask.Count-1; i >= 0; i--)
            //{
            //    nID = Appinfo.listTask[i].nID + 1;
            //    break;
            //}
            //task.nID = nID;
            Appinfo.listTask.Add(task);

            using (var db = new TaskDB(Appinfo.dbPath))
            {
                try
                {
                    int count = db.Insert(task);
                    Logger.Info($"{DateTime.Now}, 插入{count}条记录");
                }
                catch (Exception e)
                {
                    throw;
                }
            }

            Appinfo.LoadTask();
            task.tagtempleTime.nID = Appinfo.listTask[Appinfo.listTask.Count - 1].nID;

            using (var db = new TempleTimeDB(Appinfo.dbPath))
            {
                try
                {
                    int count = db.Insert(task.tagtempleTime);
                }
                catch (Exception e)
                {
                    throw;
                }
            }

            Appinfo.LoadTask();
            task = Appinfo.listTask[Appinfo.listTask.Count - 1];
        }
Exemple #10
0
        //添加任务
        private void button_Add_Click(object sender, EventArgs e)
        {
            currentTask = new tagTask();
            GetTask(currentTask);
            if (!CheckVaild(currentTask))
            {
                return;
            }
            currentTask.taskAcion = eTaskAcion.Add;
            Appinfo.AddTask(currentTask);
            //MainForm mainForm = (MainForm)this.Parent;
            RefreshStatisticsEvent(this, new AppEventArgs()
            {
                message_task = currentTask
            });
            string strInfo;

            strInfo = string.Format("添加一个新任务完毕,编号{0}", currentTask.nID);
            Logger.Info(strInfo);
            MessageBox.Show(strInfo, "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
            InitData();
        }
Exemple #11
0
        private void textBox_Count_Leave(object sender, EventArgs e)
        {
            TextBox textBox = (TextBox)sender;

            if (textBox.Text.Trim().Equals(""))
            {
                textBox.Text = "9999";
            }
            int nTime = int.Parse(textBox.Text);

            if (nTime < 1)
            {
                textBox.Text = "1";
            }
            else if (nTime > 9999)
            {
                textBox.Text = "9999";
            }

            tagSetting setting = Appinfo.QuerySetting();

            GetSetting(setting);
            Appinfo.UpdateSetting(setting);
        }
Exemple #12
0
        internal void EndTask(object sender, EventArgs e)
        {
            AppEventArgs arg = e as AppEventArgs;

            for (int i = 0; i < Appinfo.listTask.Count; i++)
            {
                if (arg.message_task.nID == Appinfo.listTask[i].nID)
                {
                    switch (arg.message_task.webState)
                    {
                    case EWebbrowserState.Start:
                    {
                    }
                    break;

                    case EWebbrowserState.Search:
                    {
                    }
                    break;

                    case EWebbrowserState.SearchSite:
                    {
                        Appinfo.listTask[i].nCountExcuteToday += 1;
                        AddExcuteCount(Appinfo.listTask[i]);
                        if (arg.message_bool)
                        {
                            Appinfo.listTask[i].nCountVaildToday += 1;
                        }
                        else
                        {
                            Appinfo.listTask[i].nCountInvaildToday += 1;
                            ShowTaskEvent(this, new AppEventArgs()
                                {
                                    message_string = string.Format("未在搜索引擎找到符合的标题或链接,结束该任务,任务{0}", Appinfo.listTask[i].nID)
                                });
                        }
                        Appinfo.listTask[i].nCountTotal += 1;
                        Appinfo.UpdateIP(NetworkUtils.GetIpAddress());
                        bExecuteTask = false;
                    }
                    break;

                    case EWebbrowserState.AccessSite:
                    {
                        Appinfo.listTask[i].nCountExcuteToday += 1;
                        Appinfo.listTask[i].nCountVaildToday  += 1;
                        AddExcuteCount(Appinfo.listTask[i]);
                        Appinfo.listTask[i].nCountTotal += 1;
                        Appinfo.UpdateIP(NetworkUtils.GetIpAddress());
                        bExecuteTask = false;
                    }
                    break;

                    case EWebbrowserState.AccessPage:
                    {
                        Appinfo.listTask[i].nCountExcuteToday += 1;
                        Appinfo.listTask[i].nCountVaildToday  += 1;
                        Appinfo.listTask[i].nCountTotal       += 1;
                        if (arg.message_task.pageAccessType == ePageAccessType.None)
                        {
                        }
                        else
                        {
                            if (arg.message_bool)
                            {
                                Appinfo.listTask[i].nCountPageVaildToday += 1;
                                ShowTaskEvent(this, new AppEventArgs()
                                    {
                                        message_string = string.Format("访问内页成功,结束该任务,任务{0}", Appinfo.listTask[i].nID)
                                    });
                                Appinfo.listTask[i].nCountPageTotal += 1;
                            }
                            else
                            {
                                Appinfo.listTask[i].nCountPageInvaildToday += 1;
                                Appinfo.listTask[i].nCountPageTotal        += 1;
                                ShowTaskEvent(this, new AppEventArgs()
                                    {
                                        message_string = string.Format("未找到符合的内页,结束该任务,任务{0}", Appinfo.listTask[i].nID)
                                    });
                            }
                        }
                        bExecuteTask = false;
                    }
                    break;

                    default:
                        break;
                    }

                    Appinfo.CountTask(Appinfo.listTask[i]);
                    //执行完成一个任务关闭程序
                    System.Environment.Exit(0);
                    break;
                }
            }
        }
Exemple #13
0
        /// <summary>
        /// 执行方法
        /// </summary>
        /// <returns></returns>
        private int DoAsyncEvent()
        {
            try
            {
                //foreach (var item in Appinfo.listTask)
                //{
                //    if (item.nID.Equals(nTaskID))
                //    {
                //        return item;
                //    }
                //}
                this.taskTimer.Stop();
                this.taskIntervalTimer.Stop();
                this.showTaskTimer.Stop();

                //停止挂机
                if (!checkBox_work.Checked)
                {
                    bWork        = false;
                    bExecuteTask = false;
                    StopTaskEvent(this, new AppEventArgs()
                    {
                    });
                    ShowTaskEvent(this, new AppEventArgs()
                    {
                        message_string = "未开始挂机"
                    });
                }
                else
                {
                    bWork        = true;
                    bExecuteTask = false;

                    //删除缓存、cookie文件
                    //FileUtils.DeleteFolder(System.Environment.CurrentDirectory+"\\"+ "BrowserCache");
                    //清除缓存
                    string cachePath = Environment.GetFolderPath(Environment.SpecialFolder.InternetCache);
                    //获取缓存路径
                    //DirectoryInfo di = new DirectoryInfo(cachePath);
                    //foreach (FileInfo fi in di.GetFiles("*.*", SearchOption.AllDirectories))//遍历所有的文件夹 删除里面的文件
                    //{
                    //    try
                    //    {
                    //        fi.Delete();
                    //    }
                    //    catch
                    //    {

                    //    }
                    //}
                    //BrowserUtils.ClearCache();
                    ShowTaskEvent(this, new AppEventArgs()
                    {
                        message_string = "删除缓存、cookie文件......"
                    });
                    System.Threading.Thread.Sleep(5000);
                    ShowTaskEvent(this, new AppEventArgs()
                    {
                        message_string = "删除完成"
                    });
                    //更换IP
                    if (!Appinfo.GetIP().Equals(NetworkUtils.GetIpAddress()) || Appinfo.GetIP().Equals(""))
                    {
                        ShowTaskEvent(this, new AppEventArgs()
                        {
                            message_string = "更换IP"
                        });
                        //this.taskIntervalTimer.Start();
                        //return -1;
                        Disconnect();
                        string     msg     = null;
                        tagSetting setting = Appinfo.QuerySetting();
                        bool       isok    = Connect(define.GetEnumName(setting.connectionType), setting.strUsername.ToString(), setting.strPwd.ToString(), ref msg);
                        ShowIPEvent(this, new AppEventArgs()
                        {
                        });
                    }

                    bool bNewTurn = false;
                    foreach (var task in Appinfo.listTask)
                    {
                        if (LastTask != null && LastTask.nID == Appinfo.listTask[Appinfo.listTask.Count - 1].nID)
                        {
                            bNewTurn = true;
                        }
                    }

                    foreach (var task in Appinfo.listTask)
                    {
                        //每轮任务顺序执行
                        if (!task.bCheck)
                        {
                            continue;
                        }
                        if (!bNewTurn && task.nID <= LastTask.nID)
                        {
                            continue;
                        }
                        if (task.nCountExcuteToday >= task.nCountLimit)
                        {
                            continue;
                        }
                        //todo 执行时间检查
                        int nCount       = 0;
                        int nCountExcute = 0;
                        switch (DateTime.Now.Hour)
                        {
                        case 0:
                        {
                            nCount       = task.tagtempleTime.nCount00;
                            nCountExcute = task.tagtempleTime.nCount00_Excute;
                        }
                        break;

                        case 1:
                        {
                            nCount       = task.tagtempleTime.nCount01;
                            nCountExcute = task.tagtempleTime.nCount01_Excute;
                        }
                        break;

                        case 2:
                        {
                            nCount       = task.tagtempleTime.nCount02;
                            nCountExcute = task.tagtempleTime.nCount02_Excute;
                        }
                        break;

                        case 3:
                        {
                            nCount       = task.tagtempleTime.nCount03;
                            nCountExcute = task.tagtempleTime.nCount03_Excute;
                        }
                        break;

                        case 4:
                        {
                            nCount       = task.tagtempleTime.nCount04;
                            nCountExcute = task.tagtempleTime.nCount04_Excute;
                        }
                        break;

                        case 5:
                        {
                            nCount       = task.tagtempleTime.nCount05;
                            nCountExcute = task.tagtempleTime.nCount05_Excute;
                        }
                        break;

                        case 6:
                        {
                            nCount       = task.tagtempleTime.nCount06;
                            nCountExcute = task.tagtempleTime.nCount06_Excute;
                        }
                        break;

                        case 7:
                        {
                            nCount       = task.tagtempleTime.nCount07;
                            nCountExcute = task.tagtempleTime.nCount07_Excute;
                        }
                        break;

                        case 8:
                        {
                            nCount       = task.tagtempleTime.nCount08;
                            nCountExcute = task.tagtempleTime.nCount08_Excute;
                        }
                        break;

                        case 9:
                        {
                            nCount       = task.tagtempleTime.nCount09;
                            nCountExcute = task.tagtempleTime.nCount09_Excute;
                        }
                        break;

                        case 10:
                        {
                            nCount       = task.tagtempleTime.nCount10;
                            nCountExcute = task.tagtempleTime.nCount10_Excute;
                        }
                        break;

                        case 11:
                        {
                            nCount       = task.tagtempleTime.nCount11;
                            nCountExcute = task.tagtempleTime.nCount11_Excute;
                        }
                        break;

                        case 12:
                        {
                            nCount       = task.tagtempleTime.nCount12;
                            nCountExcute = task.tagtempleTime.nCount12_Excute;
                        }
                        break;

                        case 13:
                        {
                            nCount       = task.tagtempleTime.nCount13;
                            nCountExcute = task.tagtempleTime.nCount13_Excute;
                        }
                        break;

                        case 14:
                        {
                            nCount       = task.tagtempleTime.nCount14;
                            nCountExcute = task.tagtempleTime.nCount14_Excute;
                        }
                        break;

                        case 15:
                        {
                            nCount       = task.tagtempleTime.nCount15;
                            nCountExcute = task.tagtempleTime.nCount15_Excute;
                        }
                        break;

                        case 16:
                        {
                            nCount       = task.tagtempleTime.nCount16;
                            nCountExcute = task.tagtempleTime.nCount16_Excute;
                        }
                        break;

                        case 17:
                        {
                            nCount       = task.tagtempleTime.nCount17;
                            nCountExcute = task.tagtempleTime.nCount17_Excute;
                        }
                        break;

                        case 18:
                        {
                            nCount       = task.tagtempleTime.nCount18;
                            nCountExcute = task.tagtempleTime.nCount18_Excute;
                        }
                        break;

                        case 19:
                        {
                            nCount       = task.tagtempleTime.nCount19;
                            nCountExcute = task.tagtempleTime.nCount19_Excute;
                        }
                        break;

                        case 20:
                        {
                            nCount       = task.tagtempleTime.nCount20;
                            nCountExcute = task.tagtempleTime.nCount20_Excute;
                        }
                        break;

                        case 21:
                        {
                            nCount       = task.tagtempleTime.nCount21;
                            nCountExcute = task.tagtempleTime.nCount21_Excute;
                        }
                        break;

                        case 22:
                        {
                            nCount       = task.tagtempleTime.nCount22;
                            nCountExcute = task.tagtempleTime.nCount22_Excute;
                        }
                        break;

                        case 23:
                        {
                            nCount       = task.tagtempleTime.nCount23;
                            nCountExcute = task.tagtempleTime.nCount23_Excute;
                        }
                        break;

                        default: break;
                        }

                        if (nCountExcute >= nCount)
                        {
                            continue;
                        }
                        LastTask.nID = task.nID;
                        bExecuteTask = true;
                        StartTaskEvent(this, new AppEventArgs()
                        {
                            message_task = task
                        });
                        this.taskTimer.Start();

                        return(1);
                    }

                    this.taskIntervalTimer.Start();
                    this.showTaskTimer.Start();
                    ShowTaskEvent(this, new AppEventArgs()
                    {
                        message_string = "未找到可以执行的任务,1分钟后开始查找下一个任务"
                    });
                }
                return(1);
            }
            catch (Exception e)
            {
                Logger.Info(string.Format("方法DoAsyncEvent: "), e);

                return(-1);
            }
        }
Exemple #14
0
 public static void Init()
 {
     Appinfo.dbPath = $"{Environment.CurrentDirectory}\\Tasks.db";
     Appinfo.LoadTask();
 }