System.Net.WebClientを介してダウンロードファイルは機能しません

StackOverflow https://stackoverflow.com//questions/12673565

  •  12-12-2019
  •  | 
  •  

質問

次のコードでファイルをダウンロードすることはできません:

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    DownloadFile("http://mirror.switch.ch/ftp/mirror/videolan/vlc/2.0.3/vlc-2.0.3.tar.xz", "C:\TEST\vlc-2.0.3.tar.xz")
End Sub

Public Sub DownloadFile(ByVal _URL As String, ByVal _SaveAs As String)
        Dim _WebClient As New System.Net.WebClient()
        _WebClient.DownloadFile(_URL, _SaveAs)
End Sub
.

次のエラーがポップアップします。(ドイツ語から英語に翻訳されます):

Microsoftエラーポップアップから: Enter Image説明

==> Type "System.Ne.WebException"からの扱いは扱われていません。

とデバッガで: 画像の説明が入力されています

==> expected:トリガー: "無効な引数が指定されています"(system.net.sockets.SocketException)System.Net.SocketS.SocketExceptionがトリガされました。"無効な引数が指定されています"

フルコード:

Imports System
Imports System.Net

Public Class Form2
    Dim str_hd As String

    Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load


        For Each drive As System.IO.DriveInfo In My.Computer.FileSystem.Drives
            Dim dbl_capacity As Double
            Dim dbl_free As Double
            Dim dbl_used As Double

            If drive.IsReady Then
                dbl_capacity = drive.TotalSize / 1073741824
                dbl_free = drive.TotalFreeSpace / 1073741824
                dbl_used = dbl_capacity - dbl_free

                dbl_capacity = Fix(dbl_capacity * 1) / 1
                dbl_free = Fix(dbl_free * 10) / 10
                dbl_used = Fix(dbl_used * 10) / 10


                str_hd = str_hd & "Laufwerk " & drive.Name & "  -  " _
                        & drive.VolumeLabel & vbCrLf _
                        & "Benutzt: " & dbl_used & " GB" & " / " & dbl_capacity & " GB" & vbCrLf & "Frei: " _
                        & dbl_free & "GB" & vbCrLf & "-------------------------------" & vbCrLf
            End If
        Next

        txtbox_hd.Text = str_hd

    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Form1.Close()
    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        DownloadFile("http://www.aerztekammer-hamburg.de/berufsrecht/Berufsordnung.pdf", "C:\TEST\Berufsordnung.pdf")
    End Sub



    Public Sub DownloadFile(ByVal _URL As String, ByVal _SaveAs As String)
            Dim _WebClient As New System.Net.WebClient()
            _WebClient.DownloadFile(_URL, _SaveAs)
    End Sub

End Class
.

役に立ちましたか?

解決

フォルダC:\TESTは存在しますか?また、資料から:

ASP.NETページなどの中間層アプリケーションでこのメソッドを使用する場合、アプリケーションが実行するアカウントがファイルにアクセスする権限がない場合は、エラーが発生します。

Wenn Sie Diese Methodeは、Einer Anwendung Der Middle-Tear-Tear-Tear Verwenden、Z。B. Einer ASP.NET-Seite、Erhalten Sie Eine Fehlermeldung、Wenn Das Konto、Unter Dem Die AnwendungAusgeführtWird、NichtÜberDie Berechtigung Zum Zugriff Auf DietiVerfügt。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top