2009-05-29 9 views
0

Es scheint, ich bin nicht in der Lage, die installierte Version des Flash unter Vista/IE7 zu erkennen.Erkennen von Adobe Flash-Version auf IE7 - Vista

Der folgende Code schlägt fehl:

var x = new ActiveXObject('ShockwaveFlash.ShockwaveFlash'); 

Der Fehler Ich erhalte ist:

automation server cannot create object 

Mit Blick auf der Adobe Flash Detection Kit (von Adobe), es sieht aus wie das auch versagt hat . Ich habe nur 1 Vista-Rechner mit zu testen, also bin ich neugierig:

  • Gibt es Möglichkeiten, um das Problem
  • Tritt dieses Problem für alle auftreten?

Ich habe dies erfolgreich auf IE6 und IE7 unter Windows XP getestet.

Antwort

0

Es gibt great examples zum Abrufen der Version der aktuell installierten Flash-Version. Alle ähnlichen Beispiele verwenden actionscript (v2 +), sie sammeln lediglich Informationen über die Flash-Version und zeigen sie dem Benutzer an.

+0

Leider ich suche _The_ JavaScript-Methode, auch Adobes eigenes Detektionssystem schlägt fehl. – Evert

+0

Ich bin auf Win XP und IE8 - Ich habe zwei verschiedene Flash-Erkennungsbibliotheken in js ausprobiert. Beide arbeiteten für mich - vielleicht hilft es auch dir: http://www.featurebell.com/javascript-flash-detection-library.html http://web.mit.edu/is/web/reference /guidelines/flash/example.html – brokenisfixed

+0

Ich habe keine befriedigende Antwort gesehen, also werde ich diese akzeptieren. – Evert

1

Sieht aus wie swfobject - http://code.google.com/p/swfobject/ - ist eine Option, die tatsächlich funktionieren kann.

"Es ist der Nachfolger von SWFObject 1.5, UFO und dem Adobe Flash Player Detection Kit." - http://www.adobe.com/devnet/flashplayer/articles/swfobject.html

-Code würde wie folgt aussehen (nicht auf einer Maschine getestet, die kein Flash nicht installiert):

<script type="text/javascript" src="/Scripts/swfobject/swfobject.js"></script> 
<script type="text/javascript"> 
$(window).load(function() { 
    try { 
     var flashPlayer = swfobject.getFlashPlayerVersion(); 
     var flashVersion = flashPlayer.major + "." + flashPlayer.minor + "." + flashPlayer.release; 
    } catch (ex) { 
    } 
}); 
</script> 
+0

danke für den Versuch, aber das war ziemlich alt; und ich denke nicht, dass dies mehr relevant ist. Ich vermute, dass es sich um einen Fehler handelte, der für meine Einrichtung spezifisch ist. – Evert