Would you like to react to this message? Create an account in a few clicks or log in to continue.

Misafir


2 posters

    EXPOLERDE ACTIVEX DENETIM SORUNU

    scarface
    scarface

    EXPOLERDE ACTIVEX DENETIM SORUNU 001911


    Erkek
    Mesaj Sayısı : 529
    Yaş : 39
    YETKİ : SİTE SAHİBİ
    Kayıt tarihi : 11/09/08

    BASARI MODU
    DENGE:
    EXPOLERDE ACTIVEX DENETIM SORUNU Img_left1000000/1000000EXPOLERDE ACTIVEX DENETIM SORUNU Empty_bar_bleue  (1000000/1000000)
    SEVİYE:
    EXPOLERDE ACTIVEX DENETIM SORUNU Img_left1000000/1000000EXPOLERDE ACTIVEX DENETIM SORUNU Empty_bar_bleue  (1000000/1000000)
    AKTİFLİK:
    EXPOLERDE ACTIVEX DENETIM SORUNU Img_left1000000/1000000EXPOLERDE ACTIVEX DENETIM SORUNU Empty_bar_bleue  (1000000/1000000)

    ikon EXPOLERDE ACTIVEX DENETIM SORUNU

    Mesaj tarafından scarface Salı Eyl. 23, 2008 2:00 pm

    İnternet Explorer6 ve 7 de ActiveX denetim sorunları ortaya çıkmıştır.Buna bağlı olarak bir html sayfası içindeki swf dosyası üzerine fare ile gelindiğinde activeX denetimini etkinleştirmek için sahneye bir kez boş tıklama veya klavyeden enter tuşuna basma uyarısı gözlenir.

    Bu sorunu halletmek için javascript kodlarından yararlanılmaktadır.Dreamweaver 8 kullananlarda 8.02 guncellemesi ile bu sorun aşılmaktadır.gerekli kodları dreamweaver otomatik olarak oluşturmaktadır.Şayet dreamweaver kullanmıyorsanız çözüm için flash programının kendisini kullanabilirsiniz.Yapmanız gereken tek şey FlashActiveContent_en.mxp isimli extensiyonu flash`a entegre etmenizdir. Bu dosyayı alttaki linkten indirebilirsiniz.

    İndir

    Üstteki dosyayı indirdikten sonra rar dosyasından çıkartın ve üzerine çift tıklayarak çalıştırın.Alttaki pencere ortaya çıkar:

    Accept butonuna basarak onaylayın:

    Extension yüklenir tamam tuşuna basın.

    çalışmanın yüklendiğini gösteren üstteki panel açılır. Yükleme tamamlanmıştır, paneli kapatabilirsiniz.

    Şimdi bilgisayarınızda hazırlamış olduğunuz fla dosyasını açın. Ana menüden File-->Publish Settings alanına tıklayın.Açılan panelden HTML sekmesine tıklayın.HTML özelliklerini gösteren panelin en üst kısmında Template alanına bakın.Burada varsayılan deger Flash Only şeklindedir.menüyü açın ve active content update-HTML kısmını seçin. şayet sayfanız https ise bir alt seçenek olan active content update-HTMLS seçeneğini kullanın.

    Publish ve sonra OK butonuna basın. Flash size kod eklentisi yapılmış html sayfasını hazırlayacaktır.Henüz işlem bitmiş değil.Kodları çalıştıracak harici bir js dosyası oluşturmamız gerekiyor.Yine flash ana menüden Commands --> Apply Active Contetnt Update kısmını seçin:

    Onaydan sonra alttaki panel açılır:

    Uygulamanın yapılacağı html sayfanızın seçilmesi gereklidir.Az evvel oluşturduğunuz html saysını tıklayarak seçin Aç butonuna basın.Uygulamanın tamalandığını gösteren alttaki panel açılır.

    Tamam butonuna basın.

    Artık işlem tamamlanmıştır.Fla dosyanızı kaydedin ve bulunduğu dizine bakın:

    Üstteki resimde de göreceğiniz gibi flash activeX sorununu çözmek için html sayfasına gerekli eklentileri yapmış ve bunun çalışması için AC_RunActiveContetnt.js dosyasını oluşturmuştur. Swf, Html ve Js dosyanızı servera gönderdiğinizde denetim sorunu çözülecektir.Aynı dizindeki diğer Html sayfaları da aynı js dosyasını kullanır.Üstteki uygulamaları düzgün yaptığınızda(yani her Html sayfası için ayrı ayrı uygulayarak)serverdaki aynı dizinde tek bir js dosyası sorunlarınızı düzeltecektir.

    Flash üstteki uygulamalarla ne eklentiler yapmıştır onları inceleyelim. Detaylarla ilgilenmiyorsanız 2.sayfayı okumayı atlayabilirsiniz. Ama 3.sayfayı incelemelisiniz.Burada tek bir html sayfasında birden fazla swf dosyası varsa yapılacaklar anlatılmaktadır.
    bb.swf isimli bir çalışmayı içeren html sayfasında normalde alttaki gibi eklentiler yapılır (bu kodları görebilmek için html sayfasını açın ve ana menüdeki Görünüm-->Kaynak kısmını seçin) :

    <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="550" height="400" id="bb" align="middle">
    <param name="allowScriptAccess" value="sameDomain" />
    <param name="movie" value="bb.swf" /><param name="quality" value="high" /><param name="bgcolor" value="#ffffff" /><embed src="bb.swf" quality="high" bgcolor="#ffffff" width="550" height="400" name="bb" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
    </object>

    Burada bb.swf dosyasının özellikleri barındırılmaktadır.

    İlk sayfada anlatıldığı gibi extension uygulamasından sonra ilk yaptığımız işlem Publish Settings kısmında html sekmesine geçip Template kısmını Active Content Update-HTTP şeklindeydi.Bu işlemi tamamladığımızda html sayfasında yukarıda yazdığımız kodlar aşağıdaki gibi değişecektir.

    <script language="javascript">
    if (AC_FL_RunContent == 0) {
    alert("This page requires AC_RunActiveContent.js. In Flash, run \"Apply Active Content Update\" in the Commands menu to copy AC_RunActiveContent.js to the HTML output folder.");
    } else {
    AC_FL_RunContent(
    'codebase', 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0',
    'width', '550',
    'height', '400',
    'src', 'bb',
    'quality', 'high',
    'pluginspage', 'http://www.macromedia.com/go/getflashplayer',
    'align', 'middle',
    'play', 'true',
    'loop', 'true',
    'scale', 'showall',
    'wmode', 'window',
    'devicefont', 'false',
    'id', 'bb',
    'bgcolor', '#ffffff',
    'name', 'bb',
    'menu', 'true',
    'allowScriptAccess','sameDomain',
    'movie', 'bb',
    'salign', ''
    ); //end AC code
    }
    </script>


    <noscript>
    <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="550" height="400" id="bb" align="middle">
    <param name="allowScriptAccess" value="sameDomain" />
    <param name="movie" value="bb.swf" /><param name="quality" value="high" /><param name="bgcolor" value="#ffffff" /> <embed src="bb.swf" quality="high" bgcolor="#ffffff" width="550" height="400" name="bb" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
    </object>
    </noscript>

    Yapılan eklentiler kırmızı ile belirlenmiştir.script tagları arasındaki kodları incelerseniz swf dosyasının tüm özelliklerinin bir javascript içine kaydodulduğunu görürsünüz. Bu kodlar daha sonra oluşturulacak olan js kodları ile beraber hem swf dosyasının tüm özellikleriyle sayfaya yüklenmesini sağlar hem de activeX denetim sorununu ortadan kaldırır.

    Mavi ile yazılan herkesin aşina olduğu kodların baş ve sonuna noscript tagları eklenmiştir.Bu eklentilerin arasında yazılan tüm kodlar html sayfası tarafından yorumlanmazlar. Yani bu kodlar yok kabul edilir.

    Şimdi madem ki bu kodlar yok kabul ediliyor o zaman bunları silersek ne olur ?

    Tahmin ettiğiniz gibi hiçbirşey değişmez.Swf dosyasının yüklenmesi ve yorumlaması artık tamamen javascript kodları ile oluşturulmaktadır.Bu hoş olmasa da şu anda bulunan tek çözüm budur.Deneme amaçlı çalışmanızdaki noscript tagları da dahil olmak üzere içindeki kodları sildiğinizde html sayfasının swf dosyasını sorunsuz bir şekilde yüklediğini göreceksiniz.

    Peki bu kodları silmeyip sadece <noscript> ve </noscript> taglarını silerseniz ne olur?

    Bu durumda html sayfası javascript kodları sayesinde bb.swf dosyasını yükler.noscript tagı kaldırıldığı için html sayfası buradaki kodları da yorumlar ve yine bb.swf dosyasını yükler. Bu durumda sayfaya 2 adet bb.swf dosyası yüklenmiş olur. Tek fark javascript kodları ile yüklenende activeX denetim sorunu yoktur, ikinci yüklenen de ise vardır.

    Flashseverlerin bir javascript koduna ihtiyaç duyması rahatsız edici olsa da buluna yöntem anlatıldığı gibidir.İilerideki sürümlerde bu iki firmanın soruna uygun çözüm bulmalarını ummaktayız.

    Şimdi 2.sorunumuz bir html sayfasında birden fazla swf dosyası varsa ne yapılacağıdır
    Bir html sayfasına birden fazla swf dosyası yüklenmesi durumunda activeX sorununu halletmek daha sıkıntılı bir durumdur.Bu işlemde manuel uygulamalara ihtiyaç vardır.Umarım anlatılanlar size karışık gelmez.Şimdi senaryomuz şöyle:

    Elimizde index.html diye bir sayfamız var ve bu sayfa içine aa.swf ve bb.swf isimli 2 dosya yüklemeyi planlıyoruz.

    1.sayfa html sayfası içindeki tek bir swf dosyaı için yapılacaklar anlatılmıştı.Önce buradaki işlem yürürlüğe konulacak.

    1- aa.fla dosyanızı açın 1.sayfada anlatılan yöntemleri uygulayarak aa.html sayfasını oluşturun.Bu işlemi düzgün yaptığınızda aa.html sayfasında activeX denetim sorunu ortadan kalkar.

    2- Aynı işlemi bb.fla dosyasını açarak uygulayın ve sorunsuz olan bb.html sayfanızı oluşturun.

    3- Biz burada oluşturulan aa.html ve bb.html sayfasını kullanmayacağız.Bu iki swf dosyasını index.html sayfasına yükleyeceğiz.Peki bu 2 html sayfasını niye oluşturduk? Amacımız bu sayfaların kaynak kodları açarak index.html sayfasında kullanmaktır.Bunun nasıl yapılacağı aşağıda anlatılacaktır.

    4- Şu anda elimizde aa.html, bb.html,aa.swf,bb.swf, AC_RunActiveContent.js ve index.html sayfamız mevcut. İndex.html sayfasında istediğimiz alanlara bu 2 swf dosyasını ekleyelim.İndex.html sayfasında hiçbir eklenti olmadığından activeX denetim sorunu vardır.Kaynak kodlara baktığımızda alttaki gibi bildik kodları görürsünüz:

    <object classid="clsid27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="550" height="400">
    <param name="movie" value="aa.swf">
    <param name="quality" value="high">
    <embed src="aa.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="550" height="400"></embed>
    </object>
    </p>
    <p>&nbsp;</p>
    <p>
    <object classid="clsid27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="550" height="400">
    <param name="movie" value="bb.swf">
    <param name="quality" value="high">
    <embed src="bb.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="550" height="400"></embed>
    </object>

    üstte gördüğünüz gibi aa ve bbswf dosyaları alt alta eklenmiştir.Şimdi bunlara manuel olarak tek tek javascript kodlarını ekleyeceğiz.

    aa.html sayfanızı çift tıklayarak açın ve Görünüm menüsünden kaynak kodlara ulaşın:

    body alanı içinde script tagları arasındaki kaynak kodları kopyalayıp index.html sayfasındaki yukarıda gösterilen kodların üzerine yapıştırın. Birde yine ilk sayfada anlatılan klasik eski kodları devreden çıkartmak için nocript taglarını unutmayalım.

    <script language="javascript">
    if (AC_FL_RunContent == 0) {
    alert("This page requires AC_RunActiveContent.js. In Flash, run \"Apply Active Content Update\" in the Commands menu to copy AC_RunActiveContent.js to the HTML output folder.");
    } else {
    AC_FL_RunContent(
    'codebase', 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0',
    'width', '550',
    'height', '400',
    'src', 'aa',
    'quality', 'high',
    'pluginspage', 'http://www.macromedia.com/go/getflashplayer',
    'align', 'middle',
    'play', 'true',
    'loop', 'true',
    'scale', 'showall',
    'wmode', 'window',
    'devicefont', 'false',
    'id', 'aa',
    'bgcolor', '#ffffff',
    'name', 'aa',
    'menu', 'true',
    'allowScriptAccess','sameDomain',
    'movie', 'aa',
    'salign', ''
    ); //end AC code
    }
    </script>

    <noscript>
    <object classid="clsid27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="550" height="400">
    <param name="movie" value="aa.swf">
    <param name="quality" value="high">
    <embed src="aa.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="550" height="400"></embed>
    </object>
    </noscript>
    </p>
    <p>&nbsp;</p>
    <p>
    <object classid="clsid27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="550" height="400">
    <param name="movie" value="bb.swf">
    <param name="quality" value="high">
    <embed src="bb.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="550" height="400"></embed>
    </object>

    Yukarıdaki kodlarla index.html sayfasında aa.swf dosyasındaki sorun düzeltilmiş olur.Kalın kırmızı harfle yazılan noscript taglarını unutmayınız.Bu eklenmezse daha önce de anlattığım gibi aynı swf dosyası 2 kez yüklenir. bb.swf dosyasındaki sorunu çözmek için yine aynı uygulama yapılmalıdır. bb.html sayfasının kaynak kodları kopyalanır ve bb.swf dosyasının bulunduğu alanın hemen üzerine yapıştırılır.Yani:

    // aa.swf dosyası için gereken javascript kodları
    <script language="javascript">
    if (AC_FL_RunContent == 0) {
    alert("This page requires AC_RunActiveContent.js. In Flash, run \"Apply Active Content Update\" in the Commands menu to copy AC_RunActiveContent.js to the HTML output folder.");
    } else {
    AC_FL_RunContent(
    'codebase', 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0',
    'width', '550',
    'height', '400',
    'src', 'aa',
    'quality', 'high',
    'pluginspage', 'http://www.macromedia.com/go/getflashplayer',
    'align', 'middle',
    'play', 'true',
    'loop', 'true',
    'scale', 'showall',
    'wmode', 'window',
    'devicefont', 'false',
    'id', 'aa',
    'bgcolor', '#ffffff',
    'name', 'aa',
    'menu', 'true',
    'allowScriptAccess','sameDomain',
    'movie', 'aa',
    'salign', ''
    ); //end AC code
    }
    </script>

    // Klasik aa.swf dosyası kodlarının okunmaması için noscript tagı eklenir
    <noscript>
    <object classid="clsid27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="550" height="400">
    <param name="movie" value="aa.swf">
    <param name="quality" value="high">
    <embed src="aa.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="550" height="400"></embed>
    </object>
    </noscript>
    </p>
    <p>&nbsp;</p>
    <p>

    // bb.swf dosyası için gereken javascript kodları
    <script language="javascript">
    if (AC_FL_RunContent == 0) {
    alert("This page requires AC_RunActiveContent.js. In Flash, run \"Apply Active Content Update\" in the Commands menu to copy AC_RunActiveContent.js to the HTML output folder.");
    } else {
    AC_FL_RunContent(
    'codebase', 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0',
    'width', '550',
    'height', '400',
    'src', 'bb',
    'quality', 'high',
    'pluginspage', 'http://www.macromedia.com/go/getflashplayer',
    'align', 'middle',
    'play', 'true',
    'loop', 'true',
    'scale', 'showall',
    'wmode', 'window',
    'devicefont', 'false',
    'id', 'bb',
    'bgcolor', '#ffffff',
    'name', 'bb',
    'menu', 'true',
    'allowScriptAccess','sameDomain',
    'movie', 'bb',
    'salign', ''
    ); //end AC code
    }
    </script>

    // Klasik bb.swf dosyası kodlarının okunmaması için noscript tagı eklenir
    <noscript>
    <object classid="clsid27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="550" height="400">
    <param name="movie" value="bb.swf">
    <param name="quality" value="high">
    <embed src="bb.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="550" height="400"></embed>
    </object>
    </noscript>
    bucocukdeli
    bucocukdeli

    EXPOLERDE ACTIVEX DENETIM SORUNU 001511


    Erkek
    Mesaj Sayısı : 567
    Yaş : 29
    YETKİ : MODERATÖR
    Kayıt tarihi : 14/09/08

    BASARI MODU
    DENGE:
    EXPOLERDE ACTIVEX DENETIM SORUNU Img_left100000/100000EXPOLERDE ACTIVEX DENETIM SORUNU Empty_bar_bleue  (100000/100000)
    SEVİYE:
    EXPOLERDE ACTIVEX DENETIM SORUNU Img_left100000/100000EXPOLERDE ACTIVEX DENETIM SORUNU Empty_bar_bleue  (100000/100000)
    AKTİFLİK:
    EXPOLERDE ACTIVEX DENETIM SORUNU Img_left100000/100000EXPOLERDE ACTIVEX DENETIM SORUNU Empty_bar_bleue  (100000/100000)

    ikon Geri: EXPOLERDE ACTIVEX DENETIM SORUNU

    Mesaj tarafından bucocukdeli Çarş. Eyl. 24, 2008 9:11 pm

    sagol kardes elıne saglık guzel olmus

      Forum Saati Ptsi Mayıs 20, 2024 12:51 pm