0

現在、ユーザーが指定したページの存在をテストする Web クローラーを C# で開発しようとしています。クローラーが起動すると、ページのステータスが Windows フォーム (ラベルを含む) に書き込まれることを期待しています。しかし、プログラムが実際にフォームに書き込むのに問題がありますか?

private void button1_Click(object sender, EventArgs e)
    {
        Uri fileURI = new Uri(URLbox.Text);
        WebRequest request = WebRequest.Create(fileURI);
        HttpWebResponse response = null;

        request.Method = "HEAD";
        bool exists = false;

        try
        {
            response = (HttpWebResponse)request.GetResponse();
            exists = response.StatusCode == HttpStatusCode.OK;

        }
        catch
        {
            exists = false;
        }
        finally
        {

            if (response != null)

                response.Close();
        }

    }
    private void label1_Click(object sender, EventArgs e)
    {
        Console.Write.ToString = ("Active");
    }

}

4

2 に答える 2

0

次のコードは機能します!

 public URLTester1()
    {
        InitializeComponent();
    }


    //Web Page Active?

    private void button1_Click(object sender, EventArgs e)
    {
        Uri fileURI = new Uri(URLbox1.Text);

        //tests http response 
        WebRequest request = WebRequest.Create(fileURI);
        HttpWebResponse response = null;

        request.Method = "HEAD";


        bool exists = false;

        try
        {
            response = (HttpWebResponse)request.GetResponse();
            exists = response.StatusCode == HttpStatusCode.OK;

        }
        catch
        {
            exists = false;
        }
        finally
        {
            // close your response.
            if (response != null)

                response.Close();
        }

        if (exists)
        {
            label1.Text = "Active";
        }
        else
        {
            label1.Text = "Inactive";
        }
于 2015-12-18T18:43:17.803 に答える