Error message when you start the SQL Server 2008 Reporting Services Configuration Manager: “Invalid namespace”

10 Åžubat 2010 – 11:58 Yazar: UÄŸur ERDEM

Sql 2008 ‘ i Kurdunuz ve Reporting services ayarları yapmaya çalışıyorsunuz ve bu hatayı alıyorsunuz. Configuration Manager: “Invalid namespace”.
Read the rest of this entry »

Bookmark and Share

MOZİLLA FiREFOX 3.6 KODLARINI DERLEME

09 Åžubat 2010 – 13:11 Yazar: admin

Merhaba değerli okuyucular. Bu yazımızda hepinizin sıkça kullandığı internet tarayıcısı Mozilla Firefox 3.6 versiyonunu Windows Vista işletim sisteminde derlemeyi göstereceğim. Tabii başlangıç için zor bir seçim olacaktır çünkü Firefox kaynağında binlerce satır kod barındırmaktadır ve bu kod üzerinde binlerce programcı çalışmaktadır. Bu yüzden kodlardan bir şey anlamamanız gayet normal. Daha küçük projelerden başlayabilirsiniz.

Sistem gereksinimleri:

*Pentium III veya ona eşdeğer bir işlemci, 1GHz ve üstü
* 512 MB RAM, 1 GB veya üstü
* 1.5 GB NTFS veya 3 GB FAT disk alanı, veya fazlası
* Windows 2000SP4 ve üstü

Gerekli yazılımlar:

*MicroSoft VC9 (Visual Studio 2008)
*Microsoft Windows SDK
*MozillaBuild
*7-zip veya Winrar

Linux’te program derleme işlemlerine aşina olanlarınız vardır.Kaynak kodunu açtığınızda karşınıza configure, install, readme, makefile gibi dosyalar gelir. Kaynak kodunu bu dosyaları kullanarak derleriz ve programın kullanımı hakkında bilgi sahibi oluruz. Temel olarak birkaç adım standarttır fakat Firefox için birçok ekstra işlem yapmak gerekir. Bu adımlar configure, build, install olmak üzere genelde bu sıra ile gider.

Önce benim kullandığım sistem hakkında fikir vereyim.
İşletim sistemim henüz hiçbir güncellemesi yapılmamış Windows Vista SP1.
Derleyicim MicroSoft Visual Studio 2008 Professional Edition.
Kullandığım SDK Microsoft Windows 7 SDK.

Bu yazılımlar ile test edilip Pentium T3200 2 GHz işlemci, 2 GB RAM ile toplam 1.5 saat sürmüştür. Dolayısıyla makale bu sistem baz alınarak yazılmıştır. Farklı sürümler ve işletim sistemleri için test etmediğimden sadece yüklemeniz gereken güncelleme veya yazılımların ismini vereceğim.

Bir Visual Sudio derleyicisi edindikten sonra bu linkten

http://ftp.mozilla.org/pub/mozilla.org/mozilla/libraries/win32/MozillaBuildSetup-1.4.exe

Read the rest of this entry »

Bookmark and Share

Tasarım Desenleri : Abstract Factory

24 Ocak 2010 – 18:45 Yazar: Volkan ALBAYRAK

Bu desen Factory Method desenine çok benzer. Amaç yine aynıdır. Sistemden nesnelerin oluşma işini soyutlar. Abstract Factory benzer özellikleri olan nesne fabrikalarını gruplar. İçinde birden fazla fabrika vardır.
ÖrneÄŸimizde birden fazla türde database’de kaydetme ve sorgulama iÅŸlemlerini gruplamak için soyut fabrikayı kullanıyoruz :
Kısaca kodlarına da bakalım :
Read the rest of this entry »

Bookmark and Share

Tasarım Desenleri : Factory Method

23 Ocak 2010 – 20:38 Yazar: Volkan ALBAYRAK

Bu tasarım deseni nesne oluşturma işini sistemden ayırır ve aldığı parametreye göre nesneleri oluşturarak kullanıcıya geri döner.
Bir örnek verecek olursak düşünün ki gezmeye giderken farklı yöntemleriniz olsun. Ben ÅŸimdilik iki tane kullanacağım : Araba ve Bisiklet. Bu iki sınıf “Yöntem” arayüzümüzden türemiÅŸler. Bir adet de YöntemFabrika’mız var.

Yöntem.cs

interface Yöntem
{
void Gez();
}

Araba.cs

class Araba : Yöntem
{
public void Gez()
{
MessageBox.Show(”arabayla geziyorum”);
}


}

Bisiklet.cs

class Bisiklet : Yöntem
{
public void Gez()
{
MessageBox.Show(”bisikletle geziyorum”);
}


}

YöntemFabrikası.cs

class YöntemFabrikası
{
public Yöntem yöntemYarat(string opt)
{
if (opt == “arabayla”)
return new Araba();
else if(opt==”bisikletle”)
return new Bisiklet();

return new Araba();//if’lere girmezse


}


}

ve kullanacağımız yer

string parametre = //istenilen yerden dinamik olarak çekilebilir
Yöntem y = new YöntemFabrikası().yöntemYarat(parametre );
y.Gez();
Bookmark and Share

Tasarım Desenleri : Singleton

23 Ocak 2010 – 20:31 Yazar: Volkan ALBAYRAK

Türkçe’ye Tek Nesne olarak çevrilen bu tasarım desenindeki ana amaç bir nesnenin yalnızca bir kez oluÅŸturulabilmesidir. Buna neden ihtiyaç duyarız sorusuna gelince mesela bir baÄŸlantıyı dinleyen nesneniz olsun. Bunu ikince kez yaratmak kimi zaman sorunlara yol açabilir. Sonuçta bunlar sonsuz threadlerdir. Onun yerine bu nesne bir kez yaratılsın ve ihtiyaç duyulduÄŸu zaman daha önce oluÅŸan nesne oraya gitsin ve iÅŸlerini halletsin isteriz.

Basit bir örnek verelim :
class RandomSayıVerici
{
private RandomSayıVerici() { }
private static Random r = new Random();

public static Random nesneAl()
{ return r; }
public static int sayiVer(int min, int max)
{
return r.Next(min, max);
}
public static int sayiVer(int max)
{
return r.Next(max);
}
public static int sayiVer()
{
return r.Next();
}
}

Şimdi biz bu örnekte bir adet RandomSayiVerici oluşturduk. Özellikle Random sınıfını kullandım çünkü özellikle yani başlan bir çok kişi bu sınıfın sürekli aynı sayı ürettiğini düşünüyor. Ama kaçırdıkları şey sınıfı sürekli baştan yaratmaları. Ve bunun bir döngü içinde olduğu düşünülürse mikro saniyeler seviyesinde sayı değişimi çok da fazla olmayacaktır. İstenilen yerde :

TextBox1.Text += RandomSayıVerici.sayiVer(0, 53).ToString() ;
şeklinde kullanılması yeterli.
İyi çalışmalar..
Bookmark and Share

Windows 7 GodMode On

23 Ocak 2010 – 17:40 Yazar: Volkan ALBAYRAK

Hani oyunlarda ÅŸifreler olur ya bu da windows’un enteresan ve kullanışlı bir ÅŸifresi diyebiliriz. Yazdığınızda bütün ayarların tek bir elde toplanması bayağı bir iÅŸe yarıyor.
Şİmdi bir klasör oluşturun ve adını :

GodMode.{ED7BA470-8E54-465E-825C-99712043E01C}

koyun. Göreceksiniz ki simgesi değişecek. İçine girdiğinizde ise normal yollardan bulunması çok zor olan bir çok ayar artık elinizin altında.

Bookmark and Share

MasterPage Kavramı

20 Ocak 2010 – 01:29 Yazar: Volkan ALBAYRAK

Düşünün ki 100′lerce sayfadan oluÅŸan bir siteniz var ve hepsinde belli yerler sabit. Örnek verecek olursak menüler genelde sabit olur ya da en altta yer alan açıklamalar vs. gibi. Bunların içinde bir yerde deÄŸiÅŸiklik yapmanız gerektiÄŸinde hepsini tekrar düzenlemeniz gerekiyordu önceleri. Fakat masterpage kavramının gelmesiyle bu sorun ortadan kalktı. Artık sabit olan tarafları masterpage içinde yaratıp normal içerik sayfaları bu masterpage’i kullanarak türeyebiliyor. Sanki yeni gibi anlatıyorum ama bu çıkalı bayağı bir oluyor :) hemen küçük bir örnekle konumuzu özetleyelim :

MasterPage.master

Burada göreceksiniz ki html sayfasında olması gereken ana tag’ler var. Çünkü buradan türeyen sayfalar body taginin içinde yer alan contentpalceholder içine gömülürler serverde iÅŸlenirken.

Defalut1.aspx

Hemen solutionExplorer’dan oluÅŸturduÄŸumuz masterpage’e saÄŸ tıklayıp “add content page” diyoruz.Türeyen sayfada hiçbir html tagi bulunmuyor çünkü onlar zaten masterpagede var. Hemen en baÅŸta MasterPageFile=”~/MasterPage.master” dikkatinizi çekmiÅŸtir. Türeyen sayfalarda “content” tagi bulunur ve sayfa tasarım ve içeriÄŸi bu iki tag arasına gömülür.

Default2.aspx

Ayrıca bir sayfanın birden fazla masterpagei olabilir. Bunun faydalarından birisi de; hatta hemen örnek vererek açıklayalım. Bir üniversite sitesi olsun bunun bir ana sayfası var yukarıda üniversite logosu olan. 5 adet fakülte var üniversitede. ve her bir fakültede ayrı ayrı acıklamalar vs var. Bunun tasarımında biden fazla masterpage kullanmak yararımıza olacaktır. Bir tanesi en üstte yer alıp sadece üniversite logosunu ve ana menüleri taşır. Bundan türeyen fakülte masterpage’leri kendi fakültesine özgü menüleri taşır. Ana masterdan türedikleri için üniversite logosunu da taşımış olurlar. ve artık ürettiÄŸimiz fakülte masterpagelerinden dilediÄŸimiz kadar dinamik içerik sayfaları oluÅŸturabiliriz :)
Bookmark and Share

Java ile Inheritance (Kalıtım) Yapma Örneği

17 Ocak 2010 – 01:56 Yazar: Basak KOLDAS

Java ile kolay bir kalıtım örneği yapalım. Car isminde bir arabanın sahip olabileceği temel özelliklere sahip bir ana class yaratalım ve bu classtan kalıtımla türettiğimiz özelleşmiş arabalar oluşturalım. Öncelikle Car classımızı yazalım. Temel olarak bir arabaya hız, fiyat ve renk özelliklerini kazandıralım.

 

public class Car {

    int speed;

    double regularPrice;

    String color;

   

//constructorda bu deÄŸerleri initialize edelim

    public Car(int speed,double regularPrice,String color){

        this.speed=speed;

        this.regularPrice=regularPrice;

        this.color=color;

    }

 

//main fonksiyonunda arabanın fiyatına erişebileceğimiz bir metod yazalım

    public double getSalePrice(){ return regularPrice; }

 

}

 

 

Daha sonra bu classtan türetilmiş kendi içinde farklı özellikleri olan farklı arabalar (subclasslar) üretelim.

Bir tane Car classını kalıtımla alan Sedan tipinde araba classı üretelim. Bu araba tipinde temel araba özelliklerinin yanında bir de uzunluğunu belirleyebilelim ve sedanın fiyatını, uzunluğu 20den büyükse 5% indirimli değilse %10 indirimli hale getirelim.

  Read the rest of this entry »

Bookmark and Share

Java Swing Örneği

16 Ocak 2010 – 16:18 Yazar: Volkan ALBAYRAK

Kısaca bir bakalım neymiÅŸ bu “swing” kütüphanesi. Aslında windowsform’larda sıkça karşılaÅŸtığımız button, label vs. gibi objeleri barındıran bir kütüphanedir. Biraz da kodlayalım bakalım :

 

 //Gerekli kütüphaneleri ekliyoruz

 import java.awt.EventQueue;

 import java.awt.FlowLayout;

 import javax.swing.JButton;

 import javax.swing.JFrame;

 import javax.swing.JLabel;

 import javax.swing.WindowConstants;

 

 public class SwingExample {

     public static void main(String[] args) {

 

        EventQueue.invokeLater(new Runnable() {

            @Override

            public void run() {

                //Penceremizi oluşturuyoruz

                JFrame f = new JFrame(”swing örnek”);

  Read the rest of this entry »

Bookmark and Share

Windows DLL’leri ile Pencere Kontrolü

16 Ocak 2010 – 15:35 Yazar: Volkan ALBAYRAK

Åžimdi asıl olay ÅŸu yaptığımız bir programdan diÄŸer açık olan program pencerelerini nasıl kontrol ederiz? Tabiki user32 DLL’i ile :)

[DllImport("user32.dll")]
public static extern int FindWindow(
string lpClassName, // class name
string lpWindowName // window name
);

Bu fonksiyon bizim açık olan programı buluyor ve bize onun Windows altındaki ID’sini veriyor. Tabiki “windows name” parametresine programın tam adının yazılması gerekli.

[DllImport("user32.dll")]
public static extern int SetForegroundWindow(
int hWnd // handle to window
);

Burası ise biraz önceki ID deÄŸerini alarak, bu ID’ye sahip olan pencereyi ön tarafa getiriyor.

[DllImport("user32.dll")]
public static extern int SendMessage(
int hWnd, // handle to destination window
uint Msg, // message
int wParam, // first message parameter
int lParam // second message parameter
);

Bu fonksiyonla ise açık olan pencereye mesaj gönderebiliyoruz. Mesela klavyeye dokunmadan notpad’i aktif yapıp oraya birÅŸeyler yazabiliriz :)
Gerisi sizin hayal gücünüze ve yapmak istediklerinize kalmış. Sormak istediğiniz bir şey varsa çekinmeyin hemen sorun. Mümkün olan en kısa sürede cevaplamaya çalışacağım.
İyi çalışmalar..

Bookmark and Share