获取转向地址的URL的源文件(可自定义REFER)

  软件下载:

  http://test.fzclx.com/caixi/geturl.rar

  程式源文件:

  CS打包:http://test.fzclx.com/caixi/geturl.cs.rar

  c#写的,可能要先安装framework.

  http://www.microsoft.com/downloads/info.aspx?na=0&p=4&SrcDisplayLang=zh-cn&SrcCategoryId=&SrcFamilyId=&genscs=&u=%2fdownloads%2fdetails.aspx%3fFamilyID%3d262d25e3-f589-4842-8157-034d1e7cf3a3%26displaylang%3dzh-cn

  下面是代码:

  using System;

  using System.Drawing;

  using System.Collections;

  using System.ComponentModel;

  using System.Windows.Forms;

  using System.Data;

  using System.Net;

  using System.IO;

  namespace WindowsApplication4

  {

  /// <summary>

  /// Form1 的摘要说明。

  /// </summary>

  public class Form1 : System.Windows.Forms.Form

  {

  private System.Windows.Forms.Label label2;

  private System.Windows.Forms.Button button1;

  private System.Windows.Forms.Label label1;

  private System.Windows.Forms.TextBox realurl;

  private System.Windows.Forms.TextBox formurl;

  private System.Windows.Forms.Label label3;

  private System.Windows.Forms.TextBox formreferer;

  private System.Windows.Forms.Panel panel1;

  /// <summary>

  /// 必需的设计器变量。

  /// </summary>

  private System.ComponentModel.Container components = null;

  public Form1()

  {

  //

  // Windows 窗体设计器支持所必需的

  //

  InitializeComponent();

  //

  // TODO: 在 InitializeComponent 调用后添加任何构造函数代码

  //

  }

  /// <summary>

  /// 清理所有正在使用的资源。

  /// </summary>

  protected override void Dispose( bool disposing )

  {

  if( disposing )

  {

  if (components != null)

  {

  components.Dispose();

  }

  }

  base.Dispose( disposing );

  }

  #region Windows 窗体设计器生成的代码

  /// <summary>

  /// 设计器支持所需的方法 - 不要使用代码编辑器修改

  /// 此方法的内容。

  /// </summary>

  private void InitializeComponent()

  {

  System.Resources.ResourceManager resources = new System.Resources.ResourceManager(typeof(Form1));

  this.formurl = new System.Windows.Forms.TextBox();

  this.label2 = new System.Windows.Forms.Label();

  this.button1 = new System.Windows.Forms.Button();

  this.label1 = new System.Windows.Forms.Label();

  this.realurl = new System.Windows.Forms.TextBox();

  this.label3 = new System.Windows.Forms.Label();

  this.formreferer = new System.Windows.Forms.TextBox();

  this.panel1 = new System.Windows.Forms.Panel();

  this.SuspendLayout();

  //

  // formurl

  //

  this.formurl.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;

  this.formurl.ForeColor = System.Drawing.SystemColors.WindowText;

  this.formurl.Location = new System.Drawing.Point(24, 32);

  this.formurl.Name = "formurl";

  this.formurl.Size = new System.Drawing.Size(288, 21);

  this.formurl.TabIndex = 0;

  this.formurl.Text = "http://";

  this.formurl.TextChanged += new System.EventHandler(this.formurl_TextChanged);

  //

  // label2

  //

  this.label2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));

  this.label2.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;

  this.label2.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(134)));

  this.label2.Location = new System.Drawing.Point(24, 16);

  this.label2.Name = "label2";

  this.label2.Size = new System.Drawing.Size(128, 17);

  this.label2.TabIndex = 2;

  this.label2.Text = "输入你要获取的网址:";

  this.label2.Click += new System.EventHandler(this.label2_Click);

  //

  // button1

  //

  this.button1.ForeColor = System.Drawing.Color.FromArgb(((System.Byte)(64)), ((System.Byte)(64)), ((System.Byte)(64)));

  this.button1.ImageAlign = System.Drawing.ContentAlignment.MiddleRight;

  this.button1.Location = new System.Drawing.Point(320, 32);

  this.button1.Name = "button1";

  this.button1.Size = new System.Drawing.Size(56, 64);

  this.button1.TabIndex = 3;

  this.button1.Text = "获取…";

  this.button1.Click += new System.EventHandler(this.button1_Click);

  //

  // label1

  //

  this.label1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));

  this.label1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;

  this.label1.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(134)));

  this.label1.Location = new System.Drawing.Point(24, 104);

  this.label1.Name = "label1";

  this.label1.Size = new System.Drawing.Size(128, 17);

  this.label1.TabIndex = 5;

  this.label1.Text = "真实的网址:";

  this.label1.Click += new System.EventHandler(this.label1_Click);

  //

  // realurl

  //

  this.realurl.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;

  this.realurl.ForeColor = System.Drawing.Color.OrangeRed;

  this.realurl.Location = new System.Drawing.Point(24, 120);

  this.realurl.Name = "realurl";

  this.realurl.Size = new System.Drawing.Size(352, 21);

  this.realurl.TabIndex = 4;

  this.realurl.Text = "";

  //

  // label3

  //

  this.label3.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));

  this.label3.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;

  this.label3.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(134)));

  this.label3.Location = new System.Drawing.Point(24, 56);

  this.label3.Name = "label3";

  this.label3.Size = new System.Drawing.Size(128, 17);

  this.label3.TabIndex = 7;

  this.label3.Text = "伪装来路:";

  //

  // formreferer

  //

  this.formreferer.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;

  this.formreferer.Location = new System.Drawing.Point(24, 72);

  this.formreferer.Name = "formreferer";

  this.formreferer.Size = new System.Drawing.Size(288, 21);

  this.formreferer.TabIndex = 6;

  this.formreferer.Text = "http://";

  //

  // panel1

  //

  this.panel1.BackColor = System.Drawing.Color.LightGray;

  this.panel1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;

  this.panel1.Location = new System.Drawing.Point(18, 13);

  this.panel1.Name = "panel1";

  this.panel1.Size = new System.Drawing.Size(364, 130);

  this.panel1.TabIndex = 8;

  //

  // Form1

  //

  this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);

  this.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("$this.BackgroundImage")));

  this.ClientSize = new System.Drawing.Size(392, 165);

  this.Controls.Add(this.label3);

  this.Controls.Add(this.formreferer);

  this.Controls.Add(this.label1);

  this.Controls.Add(this.realurl);

  this.Controls.Add(this.button1);

  this.Controls.Add(this.label2);

  this.Controls.Add(this.formurl);

  this.Controls.Add(this.panel1);

  this.Name = "Form1";

  this.Text = "取得真实URL -- 落伍的caixi www.im286.com";

  this.Load += new System.EventHandler(this.Form1_Load);

  this.ResumeLayout(false);

  }

  #endregion

  /// <summary>

  /// 应用程序的主入口点。

  /// </summary>

  [STAThread]

  static void Main()

  {

  Application.Run(new Form1());

  }

  private void Form1_Load(object sender, System.EventArgs e)

  {

  }

  private void label2_Click(object sender, System.EventArgs e)

  {

  }

  private void button1_Click(object sender, System.EventArgs e)

  {

  string Theurl=formurl.Text;

  string Referurl=formreferer.Text;

  if (Theurl.Length<10)

  {

  MessageBox.Show("兄弟,URL不正确吧","URL不正确");

  formurl.Focus();

  }

  else

  {

  HttpWebRequest myReq = (HttpWebRequest)WebRequest.Create(Theurl);

  myReq.Referer=Referurl;

  HttpWebResponse myres=(HttpWebResponse)myReq.GetResponse();

  bool hasChanged = (myReq.RequestUri != myReq.Address);

  string geturl;

  if (hasChanged){

  geturl=myReq.Address.ToString();

  }

  else{

  geturl=myReq.RequestUri.ToString();

  }

  realurl.Text=geturl;

  realurl.Focus();

  }

  }

  private void label1_Click(object sender, System.EventArgs e)

  {

  }

  private void formurl_TextChanged(object sender, System.EventArgs e)

  {

  }

  }

  }