Posts
247
Comments
67
Trackbacks
4
Flasherkennung

Hier ein Beispiel für eine Flasherkennung.

Es wird einmal überprüft ob ein ein Flash-Player vorhanden ist, das Ergebnis true oder false wird dann in einer Session-Variablen gespeichert.

Zunächst wird gecheckt ob die Überprüfung schon geschehen ist:

<%

//Flash-Prüfung schon geschehen?
if (Session["flash"] == null) {
Session[
"backurl"] = Request.ServerVariables["SCRIPT_NAME"].ToString();
Response.Redirect(
"/check_flash.aspx");
}
%>

Wenn die Session-Variable leer ist, dann wird die Überprüfung gestartet.

Hierzu wird die Seite check_flash.aspx aufgrufen. Dieses überprüft per Javascript ob ein Flash-Player vorhanden ist.

<script type="text/javascript"> <!--
/***
* Javascript Flash Detection (14.02.2005)
* (c) Oliver Nowak
* http://www.deydesigns.com
*
* Nicht vergessen, credits where they are due.
*/


function flash_detection(required, max)
{
var required_version = required;
var max_version = max;
var available_version = 0;

if(typeof(navigator.plugins["Shockwave Flash"]) == "object")
{
var description = navigator.plugins["Shockwave Flash"].description;
available_version = description.substr(16, (description.indexOf(".", 16) - 16));
}
else if(typeof(ActiveXObject) == "function")
{
for(var i = 2; i < (max_version + 1); i ++)
{
try
{
if(typeof(new ActiveXObject("ShockwaveFlash.ShockwaveFlash." + i)) == "object")
{
available_version = i;
}
}
catch(error)
{
}
}
}
return [available_version, required_version];
}

var result = flash_detection(7, 7);
if(!result[0])
{
//alert("kein flash plugin installiert");
location.href = "check_flash2.aspx?flash=nein";
}
else if(result[0] < result[1])
{
//alert("installierte version zu niedrig");
location.href = "check_flash2.aspx?flash=nein";
}
else
{
//alert("alles ok, benötigte flash version ist vorhanden");
location.href = "check_flash2.aspx?flash=ja";
}
//-->
</script>

Danach wird die Seite check_flash2.aspx aufgerufen, hier wird die Session-Variable auf treu oder auf false gesetzt.

<

script runat="server">
   void Page_Load(object sender, System.EventArgs e) {
   // Ergebnis
in der Session-Variable festhalten
   Session[
"flash"] = Request.QueryString["flash"];
   Response.Redirect (Session["backurl"].ToString());
}
</script>

 

posted on Tuesday, September 05, 2006 1:44 PM Print
Comments
No comments posted yet.

Post Comment

Title *
Name *
Email
Url
Comment *  
Please add 2 and 6 and type the answer here: