//下载视频 private void downloadButton_Click(object sender, RoutedEventArgs e) { try { string videoId = VIDTextBox.Text.Trim(); //int bitRate = 2;// 1,2,3 1表示标清,2表示高清,3表示超清 int bitRate = Convert.ToInt32(comboBox.SelectedValue.ToString()); // 下载路径 string directPaths = "C:/Workspace/Polyv/"; int ret = 0; Task task = new Task(new Action(() => { ret = DownLoadVideo.downloadVideo(videoId, bitRate, directPaths);//0:成功,-1:参数错误,-2:流量超标,-3:账号过期,-4:视频信息获取失败,-5:没有对应码率,-6:网络异常; string status = ""; switch (ret) { case 0: status = "下载完成"; break; case -1: status = "参数错误"; break; case -2: status = "流量超标"; break; case -3: status = "账号过期"; break; case -4: status = "视频信息获取失败"; break; case -5: status = "无对应码率"; break; case -6: status = "key下载失败"; break; case -7: status = "MP4下载失败"; break; case -8: status = "m3u8下载失败"; break; case -9: status = "ts下载失败"; break; case -10: status = "ts网络请求错误"; break; case -11: status = "ts下载不完整"; break; } this.Dispatcher.Invoke(new Action(() => { tipsLabel.Content = status; })); })); task.Start(); } catch (Exception ex) { System.Diagnostics.Debug.Print(ex.Message); } }