投稿者 ウッチー  (小学生) 投稿日時 2009/12/29 22:34:05
ご返答ありがとうごいざいます。
お二方のご返答を参考にして以下のようなクラスを作成してみました。
Imports System
Imports System.Net
Imports System.Threading

Class Class1

    Shared Sub top(ByVal i As Integer)
        Dim url As New Uri("http://***/top.txt")
        Dim downfile As String = "./top.txt"
            Dim wc As New WebClient()
            wc = New System.Net.WebClient()
            'イベントハンドラの作成 
            AddHandler wc.DownloadProgressChanged, _
                AddressOf downloadClient_DownloadProgressChanged
            AddHandler wc.DownloadFileCompleted, _
                AddressOf downloadClient_DownloadFileCompleted

        wc.DownloadFileAsync(url, downfile)
        Console.WriteLine("ダウンロード完了:{0}", i)
    End Sub

    Shared Sub ini(ByVal i As Integer)
        Dim url As New Uri("http://***/top.txt")
        Dim wc As New WebClient()
        Dim downfile As String = "./top.txt"
            wc = New System.Net.WebClient()
            'イベントハンドラの作成 
            AddHandler wc.DownloadProgressChanged, _
                AddressOf downloadClient_DownloadProgressChanged
            AddHandler wc.DownloadFileCompleted, _
                AddressOf downloadClient_DownloadFileCompleted

        wc.DownloadFileAsync(url, downfile)
    End Sub

    Private Sub downloadClient_DownloadProgressChanged(ByVal sender As Object, _
        ByVal e As System.Net.DownloadProgressChangedEventArgs)
        Console.WriteLine( _
            "{0}% ({1}byte 中 {2}byte) ダウンロードが終了しました。", _
            e.ProgressPercentage, e.TotalBytesToReceive, e.BytesReceived)
    End Sub

    Private Sub downloadClient_DownloadFileCompleted(ByVal sender As Object, _
            ByVal e As System.ComponentModel.AsyncCompletedEventArgs)
        If Not (e.Error Is NothingThen
            Console.WriteLine("エラー:{0}", e.Error.Message)
        Else
            If e.Cancelled Then
                Console.WriteLine("キャンセルされました。")
            Else
                Console.WriteLine("ダウンロード完了")
            End If
        End If
    End Sub

    ' 別スレッドで実行されるメソッド 
    Shared Sub worker(ByVal i As Object)
        top(CType(i, Integer))
    End Sub


    Shared Sub main()

        ' 最大同時接続数 
        ServicePointManager.DefaultConnectionLimit = 2 ' デフォルト 

        Dim t(9) As Thread

        Console.WriteLine("-- 事前ダウンロード開始 --")
        top(-1)
        ' 出力:ダウンロード完了:-1 

        Console.WriteLine("-- 一斉ダウンロード開始 --")

        For i As Integer = 0 To 9
            t(i) = New Thread(AddressOf worker)
            t(i).Start(i)
        Next
        ' 出力例: 
        ' ダウンロード完了:0 
        ' ダウンロード完了:1 
        ' ダウンロード完了:4 
        ' ダウンロード完了:6 
        ' ダウンロード完了:9 
        ' ダウンロード完了:8 
        ' ダウンロード完了:3 
        ' ダウンロード完了:5 
        ' ダウンロード完了:7 
        ' ダウンロード完了:2 
    End Sub
End Class


・・・なのですがどうしても分からない部分があり、その部分をご教授願います。

14,16,29,31行目の
                '14,29行目 
                AddressOf downloadClient_DownloadProgressChanged
                '16,31行目 
                AddressOf downloadClient_DownloadFileCompleted

がエラーになってしまいます。

普通のフォームを使用したものではエラーにはならなかったのですが・・・。

重ねてご迷惑をおかけしますが、宜しくお願いします。