Uzun zaman sonra teknik bir yazı yazacağız. C# programlama dili ile ilgili.
Visual Studio'da biliyorsunuz webBrowser component'i var. Bu component ile kolayca browser ekleyebiliyoruz projemize.
VS'da default bulunan bu component İE'nin engine'ini kullanıyor. (O'nu da doğru düzgün kullanamıyor ya, o da bir sonraki yazının konusu. Son versiyonunu kullandırtmak için registry'de bir ayar yapmak gerekiyor, ona başka bir yazıda değineceğiz nasip olursa)
Evet, İnternet Explorer'ı beğenmeyenler, ya da uygulaması icabı başka bir browser altyapısı kullanmak isteyenler olabilir. Mesela Chrome altyapısı, Firefox altyapısı.
Evet., şimdi kısaca bunu nasıl yapacağınızı anlatacağız. (VS 2008'de, .NET Framework 3.5)
Bu iş için üretilmiş çeşitli opensource componentler var, biz GeckoFx'i anlatacağız. Bunun haricinde Webkit, CefSharp gibi alternatifler de var.
1. Projemize Referanslar bölümünden, internetten indirdiğimiz
Skybound.GeckoFX.src.v1.9.1.0 dosyası içerisindeki bin klasöründe bulunan
Skybound.Gecko.dll'i ekliyoruz.
2. Aynı dosyayı toolbox'a sürükle bırak yapıyoruz.(VS 2008'de Debug modda olmamaya dikkat edin ve Form'unuzun Design kısmındayken bu işlemi yapın.)(Not: VS 2010'da bu sürükle bırak işlemi yemiyor, orada sağ tıklayıp "Choose Item" diyorsun, sonra da çıkan pencerede "Browse" butonuna basıp yukarıda yolunu tarif ettiğim dll'i ekliyorsun)
3. İnternetten indirdiğimiz
Skybound.GeckoFX.src.v1.9.1.0 dosyasındaki bi klasörünün içindekileri kopyalayıp projemizdeki
Debug klasörü altına yapıştırıyoruz.
4. Evet, geldik önemli adıma. Şimdi internetten
xulrunner-3.6.26.en-US.win32 dosyasını indiriyoruz, bu dosyanın yine bin klasörünün içini kopyalayıp(yaklaşık 25 MB) C dizini altında oluşturacağımız yeni bir klasöre kopyalıyoruz.
5. Oluşturduğumuz ve içini doldurduğumuz bu yeni klasörün path'ini, formumuzun constructer kısmında
public Form1()
{
InitializeComponent();
Skybound.Gecko.Xpcom.Initialize(@"C:\XulRunner\");
}
şeklinde belirtiyoruz.
6. Sürükle bırak yöntemiyle Toolbox'daki Genco komponentimizi formumuza ekliyoruz.
7. Aşağıdaki kod ile url'yi verip uygulamamızı kullanabiliyoruz.
geckoWebBrowser1.Navigate("http://kuran.diyanet.gov.tr/Kuran.aspx");
Hepsi bu kadar. Aslında basit. Sadece işlemler biraz uzun. Diğer fonksiyonları (refresh, go, stop, back, forward vb. rahatça bulabilirsiniz.)
Burada indirdiğiniz dosyaların versiyonları, birbirleriyle uyumu önemli. Buna dikkat ederek indirmeniz lazım. Benim yukarıda verdiklerim HTML5 uyumlu versiyon, eski versiyonlar da internette mevut, yanılıp da eski versiyonları indirirseniz birtakım uyum problemleri yaşayabilirsiniz.
Merak edenler için hemen söyleyelim, Gecko motorlu browserlardan bazıları : Firefox, Camino, Flock, Thunderbird, Seamonkey, Epiphany, NVU, Netscape, K-Meleon
Ayrıca şu adrese de bir göz atabilirsiniz:
http://smush143.wordpress.com/2010/12/28/embedding-webkit-and-gecko-in-vb-net-application/
Ancak dikkat edin verdiği sürüm sanırım eski.
Bu arada
xulrunner kısmını atlarsanız hata alırsınız, onu da belirteyim.
Faydalı olması dileğiyle.