private void Download(Parameter parameter) { try { if (!XL.XL_Init()) { Info?.Invoke("XL_Init初始化失败"); return; } XL.DownTaskParam param = new XL.DownTaskParam { IsResume = 0, szTaskUrl = parameter.Url, //szTaskUrl = "http://fs.vip.pc.kugou.com/201710131333/37a71efa9b14f17114a2d517d8f85188/G075/M07/0A/03/iw0DAFffseSARTOUASifkQnHJbE89.flac", szFilename = parameter.FileName, //"邝美云 - 去.flac", szSavePath = parameter.SaveTo }; ptrDownloadTask = XL.XL_CreateTask(param); timer.Start(); var status = XL.XL_StartTask(ptrDownloadTask); } catch (Exception e) { Info?.Invoke(e.Message); Success = false; Finished = true; } }
//下载 private void skinButton1_Click(object sender, EventArgs e) { try { foreach (ListViewItem item in resultListView.CheckedItems) { timer1.Enabled = true; timer1.Interval = 500; var initSuccess = XL.XL_Init(); if (initSuccess) { XL.DownTaskParam p = new XL.DownTaskParam() { IsResume = 0, //szTaskUrl = Result[listBox1.SelectedIndex],//下载地址 szTaskUrl = item.Tag.ToString(), szFilename = item.Text + ".flac", //保存文件名 szSavePath = target //下载目录 }; a = XL.XL_CreateTask(p); var startSuccess = XL.XL_StartTask(a); } else { MessageBox.Show("XL_Init初始化失败"); } } } catch (Exception ex) { MessageBox.Show(ex.Message); } }
public void DownLown(string id, string br, string name) { try { timer1.Enabled = true; timer1.Interval = 500; var initSuccess = XL.XL_Init(); if (initSuccess) { XL.DownTaskParam p = new XL.DownTaskParam() { IsResume = 0, szTaskUrl = GetUrl(id, br), //下载地址 szFilename = name + ".mp3", //保存文件名 szSavePath = target //下载目录 }; a = XL.XL_CreateTask(p); var startSuccess = XL.XL_StartTask(a); } else { MessageBox.Show("迅雷初始化失败"); } } catch (Exception ex) { MessageBox.Show(ex.Message); } }
private void button1_Click(object sender, EventArgs e) { try { button1.Enabled = false; timer1.Enabled = true; timer1.Interval = 500; var initSuccess = XL.XL_Init(); if (initSuccess) { XL.DownTaskParam p = new XL.DownTaskParam() { szTaskUrl = textBox1.Text, szFilename = "1.MP3", szSavePath = AppDomain.CurrentDomain.BaseDirectory }; a = XL.XL_CreateTask(p); var startSuccess = XL.XL_StartTask(a); } else { MessageBox.Show("XL_Init初始化失败"); } } catch (Exception ex) { button1.Enabled = true; MessageBox.Show(ex.Message); } }
private void btnDown_Click(object sender, EventArgs e) { try { btnDown.Enabled = false; timer1.Enabled = true; timer1.Interval = 500; var initSuccess = XL.XL_Init(); if (initSuccess) { XL.DownTaskParam p = new XL.DownTaskParam() { IsResume = 0, szTaskUrl = urlTextbox.Text, szFilename = FilenameText.Text, szSavePath = AppDomain.CurrentDomain.BaseDirectory }; a = XL.XL_CreateTask(p); var startSuccess = XL.XL_StartTask(a); downProgress.Focus(); } else { MessageBox.Show("XL_Init初始化失败"); } } catch (Exception ex) { btnDown.Enabled = true; MessageBox.Show(ex.Message); } }
public void Download() { try { timer1.Enabled = true; timer1.Interval = 500; var initSuccess = XL.XL_Init(); if (initSuccess) { XL.DownTaskParam p = new XL.DownTaskParam() { IsResume = 0, //szTaskUrl = Result[listBox1.SelectedIndex],//下载地址 szTaskUrl = "https://codeload.github.com/Gsangu/KugouDownloader/zip/master", szFilename = "KugouDownloader.zip", //保存文件名 szSavePath = target //下载目录 }; a = XL.XL_CreateTask(p); var startSuccess = XL.XL_StartTask(a); } else { Console.WriteLine("XL_Init初始化失败"); } } catch (Exception ex) { Console.WriteLine(ex.Message); } }
/// <summary> /// 下载文件 /// </summary> /// <param name="url"></param> private void BlinkBrowser1_OnDownloadFile(string url) { //只是简单实现下载,可以模仿其他下载界面,先弹出一个窗体,让用户选择保存路径文件名什么的。 //使用前先拷贝 libs/XL 目录中文件到软件运行目录。 if (File.Exists("xldl.dll")) { var initSuccess = XL.XL_Init(); if (initSuccess) { XL.DownTaskParam p = new XL.DownTaskParam() { IsResume = 0, szTaskUrl = textBox1.Text, szFilename = url.Substring(url.LastIndexOf('/') + 1),//简单处理文件名,实际中还需要单独处理,这里有BUG szSavePath = AppDomain.CurrentDomain.BaseDirectory }; taskPtr = XL.XL_CreateTask(p); var startSuccess = XL.XL_StartTask(taskPtr); if (startSuccess) { queryTimer.Interval = 500;//半秒查询一次状态 queryTimer.Tick += (s, e) => { var queryRes = XL.XL_QueryTaskInfoEx(taskPtr, taskInfo); if (queryRes) { if (taskInfo.stat == XL.DOWN_TASK_STATUS.TSC_COMPLETE) { queryTimer.Enabled = false; MessageBox.Show("下载完成。" + taskInfo.stat); //下载完成。 Console.WriteLine("下载完成"); } else if (taskInfo.stat == XL.DOWN_TASK_STATUS.TSC_ERROR) { queryTimer.Enabled = false; MessageBox.Show("下载失败。" + taskInfo.stat); } else { Console.WriteLine(string.Format("{0} {1} 进度{2},速度{3},状态{4}", DateTime.Now, taskInfo.szFilename, taskInfo.fPercent, taskInfo.nSpeed, taskInfo.stat)); } } }; queryTimer.Enabled = true; } } else { MessageBox.Show("XL_Init初始化失败"); } } else { MessageBox.Show("请先将 libs/XL 目录中文件到软件运行目录。"); } }
/// <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); }
/// <summary> /// 下载 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void downBtn_Click(object sender, EventArgs e) { try { hTasks.Clear(); toolStripProgressBar1.Value = 0; toolStripProgressBar1.Visible = true; foreach (ListViewItem item in resultListView.CheckedItems) { timer1.Enabled = true; timer1.Interval = 500; var initSuccess = XL.XL_Init(); if (initSuccess) { //item.SubItems[] XL.DownTaskParam p = new XL.DownTaskParam() { IsResume = 0, szTaskUrl = item.Tag.ToString(), //下载地址 szFilename = item.Text + "." + item.SubItems[2].Text, //保存文件名 szSavePath = target //下载目录 }; IntPtr hTask = XL.XL_CreateTask(p); hTasks.Add(hTask); var startSuccess = XL.XL_StartTask(hTask); } else { MessageBox.Show("XL_Init初始化失败"); } } } catch (Exception ex) { MessageBox.Show(ex.Message); } }
static void Main(string[] args) { AppTCPServer server = new AppTCPServer("127.0.0.1", 6801); server.OnConnected += server_OnConnected; Console.WriteLine("按任意键结束程序……"); Console.ReadKey(); return; int ctr = 0; if (args.Length <= 0) { Console.WriteLine("{'status':'-9',msg:'no args'}"); return; } else { Dictionary <String, String> pList = new Dictionary <String, String>(); for (ctr = 0; ctr < args.Length; ctr++) { //Console.WriteLine("Argument {0} is {1}", ctr + 1, args[ctr]); try { string[] sArray = Regex.Split(args[ctr], "="); pList.Add(sArray[0], sArray[1]); } catch { Console.WriteLine("解析参数失败"); } } if (pList.ContainsKey("action")) { switch (pList["action"]) { case "download": if (pList.ContainsKey("url") && pList["url"] != null) { String fileurl = pList["url"]; var initSuccess = XL.XL_Init(); if (initSuccess) { XL.DownTaskParam p = new XL.DownTaskParam() { szTaskUrl = fileurl, szFilename = pList["filename"], szSavePath = pList["path"] }; a = XL.XL_CreateTask(p); try{ var startSuccess = XL.XL_StartTask(a); if (startSuccess) { Console.WriteLine("{'status':'1',msg:'start download " + pList["filename"] + "'}"); for (int i = 0; i < 100; i = 0) { getPercent(); Thread.Sleep(1000); //停一秒 } } else { Console.WriteLine("{'status':'-3',msg:'start failed'}"); } } catch { Console.WriteLine("{'status':'-4',msg:'download error'}"); } } else { Console.WriteLine("{'status':'-2',msg:'xlinit failed'}"); } } else { Console.WriteLine("{'status':'-1',msg:'no url'}"); } break; } } else { Console.WriteLine("{'status':'-1',msg:'no action'}"); } string inputNumber; inputNumber = Console.ReadLine(); } }