{filelink=17096}
using System;
using System.Drawing;
using System.IO;
using System.Net;
using System.Windows.Forms;
public class LireSiteweb : Form
{
private TextBox txtURL;
private ListBox cookies;
private ListBox entete;
private ListBox reponse;
public LireSiteweb()
{
// Dessiner l'interface graphique
InitilizeComponenet();
}
private void InitilizeComponenet()
{
Text = "LireSiteweb - Afficher un Siteweb";
Size = new Size(500, 450);
Label label1 = new Label();
label1.Parent = this;
label1.Text = "Lien:";
label1.AutoSize = true;
label1.Location = new Point(10, 23);
txtURL = new TextBox();
txtURL.Parent = this;
txtURL.Size = new Size(200, 2 * Font.Height);
txtURL.Location = new Point(35, 20);
Label label2 = new Label();
label2.Parent = this;
label2.Text = "En-tête:";
label2.AutoSize = true;
label2.Location = new Point(10, 46);
entete = new ListBox();
entete.Parent = this;
entete.HorizontalScrollbar = true;
entete.Location = new Point(10, 65);
entete.Size = new Size(450, 6 * Font.Height);
Label label3 = new Label();
label3.Parent = this;
label3.Text = "Cookies:";
label3.AutoSize = true;
label3.Location = new Point(10, 70 + 6 * Font.Height);
cookies = new ListBox();
cookies.Parent = this;
cookies.HorizontalScrollbar = true;
cookies.Location = new Point(10, 70 + 7 * Font.Height);
cookies.Size = new Size(450, 6 * Font.Height);
Label label4 = new Label();
label4.Parent = this;
label4.Text = "HTML:";
label4.AutoSize = true;
label4.Location = new Point(10, 70 + 13 * Font.Height);
reponse = new ListBox();
reponse.Parent = this;
reponse.HorizontalScrollbar = true;
reponse.Location = new Point(10, 70 + 14 * Font.Height);
reponse.Size = new Size(450, 12 * Font.Height);
Button btnAffich = new Button();
btnAffich.Parent = this;
btnAffich.Text = "Afficher";
btnAffich.Location = new Point(275, 18);
btnAffich.Size = new Size(7 * Font.Height, 2 * Font.Height);
btnAffich.Click += new EventHandler(btnAffichOnClick);
}
void btnAffichOnClick(object obj, EventArgs ea)
{
entete.Items.Clear();
cookies.Items.Clear();
reponse.Items.Clear();
HttpWebRequest requete = (HttpWebRequest)WebRequest.Create(txtURL.Text);
requete.CookieContainer = new CookieContainer();
HttpWebResponse reqReponse = (HttpWebResponse)requete.GetResponse();
WebHeaderCollection whc = reqReponse.Headers;
for (int i = 0; i < whc.Count; i++)
{
entete.Items.Add(whc.GetKey(i) + " = " + whc.Get(i));
}
reqReponse.Cookies = requete.CookieContainer.GetCookies(requete.RequestUri);
foreach(Cookie cky in reqReponse.Cookies)
{
cookies.Items.Add(cky.Name + " = " + cky.Value);
}
Stream strm = reqReponse.GetResponseStream();
StreamReader sr = new StreamReader(strm);
while (sr.Peek() > -1)
{
reponse.Items.Add(sr.ReadLine());
}
sr.Close();
strm.Close();
}
public static void Main()
{
Application.Run(new LireSiteweb());
}
}