4

このコードでファイルをダウンロードできますが、ファイル名を知っている必要があります。ディレクトリ(ディレクトリリンク:https ://www.dropbox.com/sh/koao8dlfpcao8sk/XzDZMfejiF )にあるファイルをダウンロードして実行する方法はありますか?

private void Update_Load(object sender, EventArgs e)
{
        WebClient webClient = new WebClient();
        webClient.DownloadFileCompleted += new AsyncCompletedEventHandler(Completed);
        webClient.DownloadProgressChanged += new DownloadProgressChangedEventHandler(ProgressChanged);
        webClient.DownloadFileAsync(new Uri("https://www.dropbox.com/s/6o5kvzr7s0c6mne/Test.txt"), @"C:\Users\Admin\Downloads\Test.txt");
}
4

3 に答える 3

4

DropboxにはRESTAPIがあるため、適切なURLでHTTP GETを実行するだけで、フォルダーのコンテンツを取得できます。ドロップボックスAPIリファレンスの/metadataを見てください。list = trueを渡すと、フォルダーの内容が表示され、応答を解析してファイル名を取得できます。次に、ファイルをダウンロードできます。

于 2012-06-19T13:55:30.167 に答える
0

あなたはすでにダウンロード部分をカバーしているようです。これがダウンロードしているWindowsEXEであると仮定すると、ダウンロード後にProcess.Startを使用して実行できます。

編集: この質問は、これを行う方法のいくつかのアイデアを提供しているようです。基本的に、所有しているディレクトリURLを使用してHttpWebRequestを作成し、そのディレクトリに含まれるファイル(単一のファイルの場合もあります)のリストを取得するために、ここに返されるものを解析する必要があります。それができたら、通常の方法でそのファイルをダウンロードできます。

于 2012-06-19T13:38:02.250 に答える
0

DownloadFileAsyncを介してダウンロードを開始するときは、とにかくファイル名を指定する必要があります。その名前を使用して、MusiGenesisが提案したようにProcess.Startに渡します。

于 2012-06-19T13:49:45.207 に答える