15 Temmuz 2006 // {victory}
0 votes, average: 0 out of 50 votes, average: 0 out of 50 votes, average: 0 out of 50 votes, average: 0 out of 50 votes, average: 0 out of 5 (0 oy) Loading ... Loading ...
 
Ekle
Digg
Technorati
StumbleUpon
Reddit

Sitenizde harika flash çalışmalar yayınlıyorsunuz. Çok güzel! Fakat bazı işgüzarlar .swf dosyanızı aşırıp kendi serverlarına yüklüyorlar.

Acaba swf dosyalarımıza böyle bir kullanımı engelleme özelliği ekleyebilir miyiz? Evet. Bu dersimizde Action Scriptle, çalınan Flash dosyalarımızın başka serverlara uçmasını engellemeye çalışacağız.

Swf dosyamızın başka bir serverda tutulup çalıştırılmasını engellemek için 2 ihtimalli bir algoritma gerekiyor:

1- İstediğimiz adresten bağlanılması.
2- İstemediğimiz bir adresten bağlanılması :).

1. durumda dosyayı oynatacak, ikinci durumdaysa .swf’yi oynatmayacak ve istersek bir uyarı penceresiyle sayfa ziyaretçilerini uyaracağız.

Önce fonksiyonumuzu başlatalım. Fonksiyon ismimiz koruma olsun.

function koruma (dogruURL){

Parantez içine yazdığımız dogruURL değişkeni, swf’mizin görüntülenmesini istediğimiz URL adresi olacak.

Şimdi sırada swf’nin çalışmasını durdurmak ve swf’yi çağıran adresi bulmak var.

_root.stop ();
suankiURL = _root._url;

Böylece doğru adres olup olmadığını anlayana kadar swf’nin çalışmasını engellemiş oluyor ve suankiURL değişkenine bulunduğumuz adresi atıyoruz.

if(suankiURL != dogruURL)
{

Basit bir if sorgusuyla “suankiURL dogruURL’ye eşit değilse” demiş oluyoruz.

msg = “Dosyayı istenmeyen bir adresten çağırıyorsunuz. Orjinal dosyaya ” + dogruURL + ” adresinden ulaşabilirsiniz.”;
getURL(”javascript:alert(’”+msg+”‘)”)
_root.unloadMovie();
}

Tercihe bağlı olarak kullanabileceğimiz bu bölümde, eşitlik sağlanmadığında yani farklı bir siteden dosyamız çağrıldığında çalıştırılacak kodları yazıyoruz.

Örneğimizde msg değişkenini oluşturduk ve JavaScript kullanarak uyarı penceresi açılarak değişkenimizin ekrana basılmasını sağladık. Bu herhalde yeterli bir uyarı olur aşıranlara :)

Bu bölümün sonuna da Flash çalışmamızın oynatılmaması için unloadMovie (); fonksiyonunu ekliyoruz.

else
{
_root.play();
}
}

Eğer swf’mizin çalıştırıldığı url, dogruURL değişkenine eşitse play (); ile çalışmamızı oynatmaya başlıyoruz.

İşte bu kadar!

Fonksiyonumuzu koruma (http://websitem.com/dosyam.swf); şeklinde çağıracağız.

Aşağıda çalışmada lazım olan bütün kodlar yer alıyor.

/*
SWF DOSYA KORUMASI
OPEREYSIN.com
WERE-HERE.com’daki orjinal fonksiyonun degistirilmis versiyonudur.
Fonksiyonu su sekilde kullanın:
koruma (”http://websitem.com/dosyam.swf”);
*/
function koruma (dogruURL)
{
_root.stop();
suankiURL = _root._url;
if(suankiURL != dogruURL)
{
msg = “Dosyayı istenmeyen bir adresten çağırıyorsunuz. Orjinal dosyaya ” + dogruURL + ” adresinden ulaşabilirsiniz.”;
getURL(”javascript:alert(’”+msg+”‘)”)
_root.unloadMovie();
}
else
{
_root.play();
}
}
Bu yazı 15 Temmuz 2006 günü, saat 8:40 sıralarında victory tarafından yayınlandı. İlgili olduğu kategori: Dersler. Bu yazıya yapılacak yorumlardan haberdar olmak için RSS 2.0 beslemesini kullanabilirsiniz. Yorum yapabilirsiniz, veya kendi sitenizden geri izleme yapabilirsiniz.

“ActionScript ile Flash dosyası korumak” için 4 Yorum
Yorum Sıralaması:
Puana Göre | Tarihe Göre

 

 

17 Temmuz 2006
22:01
Bu yorumu kimse tutmamış.

Merhaba ..Güzel bir anlatım fakat kişi swf to fla programlarıyla swf dosyasına yazmış olduğumuz bu kodları silemez mi?Yani çok da geçerli bir yöntem olduğunu düşünmüyorum.

 

victory
Avatar
18 Temmuz 2006
1:23
Bu yorumu kimse tutmamış.

Genellikle o tip programlar animasyon kısmını gösterip, AS kısmını alamıyorlar.

Eğer doğru olarak çevirebilirlerse (şifreyi de geçtiklerini var sayıyorum) zaten dosyamızın üzerine bir bardak su içmemiz gerekir. Bu yöntem değil, hiç bir yöntem bizi paklamaz.

Kolay gelsin.

 

 

asdfasdasd
20 Nisan 2007
4:11
Bu yorumu kimse tutmamış.

as include etmek daha mantıklı ama yerini bulmamalı :D

 

 

demir
7 Mayıs 2007
22:16
Bu yorumu kimse tutmamış.

hocam teşekkürler…uzun süredir aradığım olay (:

Yorum Yapın

Yorum yapabilmek için giriş yapmalısınız. Opereysin üyesi değilseniz, önce üye olmanız gerekiyor.

Kısayollar
2 sütun