
A mellékelt példa megnyitása előtt szükséges egy FlashCheck nevű virtuális könyvtár létrehozása, mely a példa könyvtárára mutat. Ehhez futtassa le a mellékelt CreateVD.js parancsállományt.
A Flash animációk lejátszásához szükség van valamilyen segédprogramra, mely a böngészőbe épülve észrevétlenül működik. A Web-alkalmazások készítőinek – mielőtt Flash animációkkal tűzdelt kódot küldenek el a felhasználói oldalra – meg kell győződniük arról, hogy a kliens böngészője képes-e ezek lejátszására.
ASP.NET alkalmazások készítésekor nem találunk olyan osztályt, mely közvetlenül választ adna erre a kérdésre, így a lekérdezést saját módszerrel kell elvégezni. Ehhez azonban ismernünk kell, hogy a Flash animációk lejátszására alkalmas szoftver milyen formában van jelen a kliens-oldali rendszerben.
Ennek egy lehetséges módja, hogy a kis szoftver nem más, mint egy ActiveX vezérlő, mely a hátérben futva teszi a dolgát. A Windows XP rendszerben a Flash.ocx állományt a következő elérési útvonalon találjuk meg:
<meghajtó>:\\Windows\system32\Macromed\Flash\Flash.ocx
A kis plug-in felhasználható programjainkban úgy, hogy a megfelelő módszerrel elérjük, és példányosítjuk a vezérlő objektumait. Ezt használjuk ki abban az esetben is, amikor arra vagyunk kíváncsiak, hogy létezik-e egyáltalán.
Amennyiben az automatizáló osztály létre tudja hozni az objektumot, akkor létezőnek tételezzük fel a Flash lejátszót, ellenkező esetben nem. Amennyiben az utóbbi variáció érvényes, akkor a példányosító mechanizmus kivételt generál, melyet elkapva kaphatjuk meg a szükséges információt.
A műveletet szerver-oldalon végezzük el a HttpServerUtility osztály segítségével. Úgy járunk el, hogy – mivel a lejátszó verziószáma folyamatosan emelkedik az új szoftverek megjelenésével – a lejátszó 1 és 10 közötti verzióit keressük. Az utolsó helyes lekérdezés esetén elkapjuk a verzióinformációt, és kiírjuk azt a weblapra.
Az objektum példányosítása a következőképpen történhet, ha az ActiveX vezérlő neve a következő általános karakterlánccal adható meg: ShockwaveFlash.ShockwaveFlash.verziószám:
string str = "ShockwaveFlash.ShockwaveFlash.";
int version = 0;
bool installed = false;
for(int i=1;i<11;i++)
{
try
{
object ax = Server.CreateObject(str + i.ToString());
installed = true;
version = i;
}
catch
{}
}
Az utolsó hiba nélküli lekérdezés eredményét elmentjük. Amennyiben nincs lejátszó a számítógépen, akkor egy üzenetben jelezzük azt.
Ha telepítve van valamelyik verziójú plug-in a rendszerben, akkor a mellékelt sample.swf, animációt tartalmazó állomány lefuttatásával meg is győződhetünk annak működéséről. Az állományt dobjuk egy megnyitott böngészőpéldányra, és látható lesz az eredmény.
Amennyiben a Flash.ocx állomány megtalálható a számítógépünkön, de az animáció mégsem fut, akkor a vezérlő nincs telepítve. Ezt megtehetjük a regsvr32.exe segédprogram segítségével, a következőképpen: