1

私は C# の経験はありませんが、基本は理解できました。今、ビデオ ライブラリを使用して YouTube からビデオをダウンロードしようとしています (VS パッケージ マネージャー内: Install-Package VideoLibrary)。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

using System.IO;
using VideoLibrary;

namespace TubeDemo
{
    public partial class MainWindow : Window
    {
        string link = "https://www.youtube.com/watch?v=8SbUC-UaAxE";
        string link2 = "https://www.youtube.com/watch?v=BlRqTNkgEuo";
        public MainWindow()
        {
            InitializeComponent();
        }
        void SaveVideoToDisk_Click(object sender, EventArgs e)
        {
            var youTube = YouTube.Default; // starting point for YouTube actions
            var video = youTube.GetVideo(link2); // gets a Video object with info about the video
            File.WriteAllBytes(@"C:\testfire\" + video.FullName, video.GetBytes());
        }
    }
}

上記の関数SaveVideoToDisk_Clickは、正常に動作する .xaml ボタンから呼び出されます。しかし、すべてのビデオが正常に機能するわけではありません。video.URIとてつもなく大きくなり、800 文字を超えます。一部の URL ではvideo.URI、 が例外をスローすることが判明しています。

タイプ 'System.ArgumentOutOfRangeException' の未処理の例外が mscorlib.dll で発生しました

提供されたコードでは、link引数として渡すと、渡すときに問題なくスローされますlink2

  1. これを修正できますか?
  2. そうでない場合、これらの例外をどのように処理すればよいですか? 試して、キャッチして報告するか、より良いアイデアの前にチェックしていますか?
4

0 に答える 0