Exemple #1
0
        /// <summary>
        /// 使用API方式下载,停止,删除
        /// </summary>
        private static void Test1()
        {
            // 建立任务
            var param = new XL.DownTaskParam()
            {
                TaskUrl  = "https://down5.huorong.cn/sysdiag-all-4.0.19.4.exe",
                SavePath = @".\",
                FileName = "test1.exe",
            };
            var task = XL.CreateTask(param);

            Debug.Assert(task != null);

            // 启动任务
            var ok = XL.StartTask(task);

            Debug.Assert(ok);

            // 下载5秒
            Thread.Sleep(5000);

            // 停止任务
            ok = XL.StopTask(task);
            Debug.Assert(ok);

            // 等待任务完全停止
            var taskInfo = new XL.TaskInfo();

            while (XL.QueryTaskInfoEx(task, taskInfo))
            {
                Console.WriteLine(taskInfo.State);
                if (taskInfo.State == XL.TaskStatus.Pause)
                {
                    break;
                }
                Thread.Sleep(1000);
            }

            // 移除任务
            ok = XL.DeleteTask(task);
            Debug.Assert(ok);

            // 清理临时文件
            ok = XL.DelTempFile(param);
            Debug.Assert(ok);
        }