检测客户端显示器分辨率、浏览器类型和客户端IP (C#)

发布时间:2007年10月17日      浏览次数:1667 次
ClientPeek.aspx
<%@ Page language="c#" EnableViewState = "false" Codebehind="ClientPeek.aspx.cs" AutoEventWireup="false" Inherits="eMeng.Exam.ClientPeek" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>检测客户端显示器分辨率、浏览器类型和客户端IP</title>
<META http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta content="Microsoft Visual Studio 7.0" name="GENERATOR">
<meta content="C#" name="CODE_LANGUAGE">
<meta content="【孟子E章】:http://xml.sz.luohuedu.net/" name="CopyRight">
<meta content="JavaScript" name="vs_defaultClientScript">
<meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
<script language=javascript>
var PDFPlugin = false;
try
{
       pdftest=new ActiveXObject("PDF.PdfCtrl.6");
}
catch(e)
{
      PDFPlugin = false
}
</script>
</HEAD>
<body id="MyBody" MS_POSITIONING="GridLayout" runat="server">
<form id="browserpeek" runat="server" name="browserpeek">
<asp:label id="Label1" runat="server"></asp:label></form>
</body>
</HTML>
ClientPeek.aspx.cs
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
namespace eMeng.Exam
{
/// <summary>
/// CheckPeek 的摘要说明。
/// </summary>
public class ClientPeek : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Label Label1;
protected System.Web.UI.HtmlControls.HtmlGenericControl MyBody;
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
System.Web.UI.WebControls.Button Button1 = new System.Web.UI.WebControls.Button();
if(!IsPostBack)
{
System.Web.UI.HtmlControls.HtmlInputHidden btnW = new System.Web.UI.HtmlControls.HtmlInputHidden();
System.Web.UI.HtmlControls.HtmlInputHidden btnH = new System.Web.UI.HtmlControls.HtmlInputHidden();
      System.Web.UI.HtmlControls.HtmlInputHidden btnPDF = new System.Web.UI.HtmlControls.HtmlInputHidden();
Button1.ID = "Button1";
btnW.Name = "WidthPixel";
btnW.ID = "WidthPixel";
btnH.Name = "HeightPixel";
btnH.ID = "HeightPixel";
      btnPDF.Name = "PDF";
      btnPDF.ID = "PDF";
this.FindControl("browserpeek").Controls.Add(btnW);
this.FindControl("browserpeek").Controls.Add(btnH);
      this.FindControl("browserpeek").Controls.Add(btnPDF);
this.FindControl("browserpeek").Controls.Add(Button1);
string scriptString = "";
scriptString += "document.all.browserpeek.WidthPixel.value=window.screen.width;\r\n";
scriptString += "document.all.browserpeek.HeightPixel.value=window.screen.height;\r\n";
scriptString += "document.all.browserpeek.PDF.value=PDFPlugin;\r\n";
this.RegisterOnSubmitStatement("Meng", scriptString);
this.MyBody.Attributes.Add("onload", "document.all."+Button1.ClientID+".click();");
}
else
{
this.MyBody.Attributes.Remove("onload");
if(this.FindControl("browserpeek").Controls.Contains(Button1))
{
this.FindControl("browserpeek").Controls.Remove(Button1);
Button1.Dispose();
}
System.Text.StringBuilder strLabel = new System.Text.StringBuilder();
HttpBrowserCapabilities bc = Request.Browser;
strLabel.Append("您的浏览器的分辨率为:");
strLabel.Append(Request.Form["WidthPixel"]);
strLabel.Append("×");
strLabel.Append(Request.Form["HeightPixel"]);
strLabel.Append("<hr color='#000099'>");
strLabel.Append("浏览器基本信息:<br>");
strLabel.Append("Type = " + bc.Type + "<br>");
strLabel.Append("Name = " + bc.Browser + "<br>");
strLabel.Append("Version = " + bc.Version +"<br>");
strLabel.Append("Major Version = " + bc.MajorVersion + "<br>");
strLabel.Append("Minor Version = " + bc.MinorVersion + "<br>");
strLabel.Append("Platform = " + bc.Platform + "<br>");
strLabel.Append("Is Beta = " + bc.Beta + "<br>");
strLabel.Append("Is Crawler = " + bc.Crawler + "<br>");
strLabel.Append("Is AOL = " + bc.AOL + "<br>");
strLabel.Append("Is Win16 = " + bc.Win16 + "<br>");
strLabel.Append("Is Win32 = " + bc.Win32 + "<br>");
strLabel.Append("支持 Frames = " + bc.Frames + "<br>");
strLabel.Append("支持 Tables = " + bc.Tables + "<br>");
strLabel.Append("支持 Cookies = " + bc.Cookies + "<br>");
strLabel.Append("支持 VB Script = " + bc.VBScript + "<br>");
strLabel.Append("支持 JavaScript = " + bc.JavaScript + "<br>");
strLabel.Append("支持 Java Applets = " + bc.JavaApplets + "<br>");
strLabel.Append("支持 ActiveX Controls = " + bc.ActiveXControls + "<br>");
strLabel.Append("CDF = " + bc.CDF + "<br>");
strLabel.Append("W3CDomVersion = " + bc.W3CDomVersion.ToString() + "<br>");
strLabel.Append("UserAgent = " + Request.UserAgent + "<br>");
strLabel.Append("UserLanguages = " + Request.UserLanguages[0].ToString() + "<br>");
strLabel.Append("<hr color='#000099'>");
strLabel.Append("客户端计算机基本配置:<br>");
strLabel.Append("UserHostName = " + Request.UserHostName + "<br>");
strLabel.Append("UserHostAddress = " + Request.UserHostAddress + "<br>");
      strLabel.Append("PDF 6.0 插件是否安装 = " + Request.Form["PDF"] + "<br>");
Label1.Text = strLabel.ToString();
}
}

#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
}
}
免责声明:本站相关技术文章信息部分来自网络,目的主要是传播更多信息,如果您认为本站的某些信息侵犯了您的版权,请与我们联系,我们会即时妥善的处理,谢谢合作!