Saturday, March 15, 2014

[C#] Exe icine Gomulmus Baska Bir Exe'yi Calistirmak

C#'ta bir program yazarken bazen farkli bir calistirilabilir (exe) dosyayi calistirmak gerekebilir. Bu noktada ana sorun, bir programin icine farkli bir dosyayi nasil gomup, onu nasil geri cikartacagimizdir. Hadi yapalim!

Yapacagimiz islem, dosyayi bir temp dosyaya kaydedip, onu calistirmak...

Oncelikle calistirmak istedigimiz dosyayi, projemizin icine gonderiyoruz ve sag tiklayip Properties barini acip Build Action ozelligini Embeded Action olarak ayarliyoruz ki programimizi derledigimizde dosyamiz da exemizin icine gomulmus olsun.

Oncelikle gecici dosyalar olusturmak icin buldugum bir sinif var. Onu programize dahil edelim:


Simdi de programi calistirmak istedigimiz yerdeasagidaki kodu yaziyoruz:
Bu kadar, tabii ihtiyaciniza gore sekillendirmek size kalmis...

Monday, March 10, 2014

Mozilla Addon SDK'da console.log() Mesajlarini Gorebilmek

Hep REGEDIT tarzi kayit defterlerinde mevcut olmayan, ancak sonradan birilerinin eklemesine izin verebilen sistemlere "gicik" olmusumdur. Yine bu tarz bir seyle karsilastim... *

Sorun, Addon SDK'da main.js'de console.log("log mesaji icerigi"); yazdiginizda bunu varsayilan olarak Browser Console'da goremezsiniz. Sistem elestirisini birakip hemen cozumu veriyorum:

Yeni bir sekme acip adres cubuguna about:config yazip, ardindan cikan uyariyi da kabul edip Firefox'un REGEDIT'ine ulasmis oluyoruz. Burada sag tiklayip, Yeni'yi ardindan da Dizi'yi seciyoruz. Gelen ekranda prefence name olarak extensions.sdk.console.logLevel giriyoruz. Bunun degerini de all yapiyoruz.

Artik console.log() mesajlarini Browser Console'da gorebilirsiniz.

* Guncelleme Biraz daha arastirmadan sonra yukaridaki ilk paragraftaki sitemlerimde haksiz oldugum sonucuna vardim. console referansinda yukaridaki secenegin varsayilan olarak tanimli gelmeyisinin sebebi olarak, eklentiye ozel tanimlama yapabilmemize olanak saglamak amacli oldugu sonucu cikarilabiliyor. :)