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

本文介绍了一个ASP.NET Web应用程序示例,用于获取客户端的显示器分辨率、浏览器类型及客户端IP地址,并通过JavaScript和C#实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

下面的代码实现了检测客户端显示器分辨率、浏览器类型和客户端IP的功能。你可以把客户端信息保存到Session,ViewState等中以便在其它的页面直接使用。

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; ";
  scriptString 
+= "document.all.browserpeek.HeightPixel.value=window.screen.height; ";
  scriptString 
+= "document.all.browserpeek.PDF.value=PDFPlugin; ";

  
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();
  }

}

  
  
Web 窗体设计器生成的代码
}

}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

peter824

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值