Per ASP.NET IE32Bit und IE64Bit erkennen
-
Donnerstag, 20. September 2012 08:37
Hallo,
ich habe folgendes Problem, ich habe eine Webside die nicht unter IE 64Bit läuft und möchte mit ASP.NET bei öffen der Seite herausfinden ob ein 64Bit Browser benutzt wird. Die Browser Versionen auslesen geht, aber ich sehe nicht ob es eine 32Bit oder 64Bit Version ist.
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load Dim sB As String = "" With Request.Browser sB &= "Type = " & .Type & vbCrLf sB &= "Name = " & .Browser & vbCrLf sB &= "Vers = " & .Version & vbCrLf sB &= "Major Vers = " & .MajorVersion & vbCrLf sB &= "Minor Vers = " & .MinorVersion & vbCrLf End With MessageBox.Show(s) End Sub
MfG Schlabbe
- Bearbeitet Schlabbe Donnerstag, 20. September 2012 08:39
Alle Antworten
-
Donnerstag, 20. September 2012 09:12
Hi,
wenn ich mir so anschaue, wie viele UserAgents im Browser Objekt fehlen, kann ich mir nicht vorstellen, dass einem das wirklich was bringt.
IE x64 sendet bspw. folgenden UserAgent Header:
Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
IE x86 dagegen folgenden:
Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)
Ich würde also den UserAgent String nach "Win64; x64" durchsuchen. Wenn vorhanden, ists einer.
Alternativ könnte man auich Request.ServerVariables( "HTTP_UA_CPU" ) abfragen. IE x64 sendet einen "UA-CPU" Header mit dem Wert "AMD64" mit (anscheinend unabhängig davon, ob eine Intel, AMD, ... CPU verbaut ist, bei mir ists ein Intel, dennoch kommt AMD64), IE x86 sendet das nicht.
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community- Als Antwort markiert Schlabbe Donnerstag, 20. September 2012 09:38

