Makale Özeti

Bu makalemde işletim sistemimizin adını ve dilini öğrenmek için basit bir programın nasıl yazıldığını göreceğiz.

Makale

Makale aynı zamanda System.Management namespacei için güzel bir örnek oluşturacak. Kodlarımızda kullanacağımız WblObjectQuery işletim sistemi bilgilerini görmek için kullanılan bir System.Management nesnesi. Bu nesne yoluyla win32_OperatingSystem tablosuna bağlanıp işimize yarayacak bilgileri çekeceğiz.

 

 

Öncelikle aşağıdaki formu oluşturuyoruz. 2 textbox ve 2 buttondan oluşuyor. Textboxlarımızın birine işletim sistemimizin türü, diğerine ise işletim sistemimizin dili geliyor. Buttonların hiçbir özelliği yok. Sadece görsel amaçlı, textboxta ne yazıyorsa orada da yazmasını istiyoruz.

 

 

 

 

Şimdi kod bölümüne geçiyoruz. Öncelikle System.IO ve System.Management sınıflarını projemize import ediyoruz.

 

 

Imports System.IO

 

Imports System.Management

 

 

Daha sonra formumuzun load özelliğine kodlarımızı yazıyoruz. Kodların açıklamaları satır aralarında yer alacaktır. Böylece kodlarken neyi neden yazdığınızı da anlayabileceksiniz.

 

 

'makalenin basinda söyledigim gibi WqlObjectQuery'i kullanarak

 

' win32_OperatingSystem tablosuna bağlanıp verileri çekiyoruz

 

Dim objectQuery As New WqlObjectQuery("select * from win32_OperatingSystem")

 

Dim searcher As New ManagementObjectSearcher(objectQuery)

 

Dim share As ManagementObject

 

'a parametresi sistem dilinin değerini taşıyacak

 

Dim a As String

 

'os parametresi ise isletim sistemimizin türünü tutacak

 

Dim os As String

 

For Each share In searcher.Get()

 

'win32_OperatingSystem tablosundaki name alanını

 

'isimize yarayacak sekilde cekiyoruz

 

a = share("Name")

 

Dim split1 As String()

 

split1 = Split(a, "|")

 

os = split1(0)

 

'hem textbox2ye hemde button2ye isletim sistemimizin türünü yazdiriyoruz

 

TextBox2.Text = os

 

Button2.Text = os

 

Next share

 

'simdi ise isletim sistemimizin dilini ögrenecegiz

 

For Each share In searcher.Get()

 

'yine win32_OperatingSystem tablosunun

 

' Locale alanindaki veriyi okuyoruz

 

a = share("Locale")

 

'belirli global degiskenler var

 

'örnegin 0409 ingilizceyi temsil ediyoruz

 

'ben önemli dillerin kodlarini aldim

 

'siz daha cok ekleyebilir yada silebilirsiniz

 

If a = "0409" Then

 

TextBox1.Text = "English"

 

Button1.Text = "English"

 

ElseIf a = "0407" Then

 

TextBox1.Text = "German"

 

Button1.Text = "German"

 

ElseIf a = "040a" Then

 

TextBox1.Text = "Spanish"

 

Button1.Text = "Spanish"

 

ElseIf a = "040c" Then

 

TextBox1.Text = "French"

 

Button1.Text = "French"

 

ElseIf a = "0416" Then

 

TextBox1.Text = "PortBraz"

 

Button1.Text = "PortBraz"

 

ElseIf a = "0419" Then

 

TextBox1.Text = "Russian"

 

Button1.Text = "Russian"

 

ElseIf a = "0410" Then

 

TextBox1.Text = "Italian"

 

Button1.Text = "Italian"

 

ElseIf a = "0415" Then

 

TextBox1.Text = "Polish"

 

Button1.Text = "Polish"

 

'iste asil yakalamamiz gereken dil

 

'041f türkceyi temsil ediyor

 

ElseIf a = "041f" Then

 

TextBox1.Text = "Turkish"

 

Button1.Text = "Turkish"

 

End If

 

Next share

 

 

 

 

Projeyi çalıştırdığınızda aşağıdaki görüntüyü alacaksınız.

(İşletim sisteminizin Windows XP, dilinizin Türkçe olduğunu varsayıyorum.)

 

 

 

Böylelikle basit bir yolla nasıl işletim sistemi bilgilerini elde edebileceğinizi göstermiş oldum. Umarım bundan sonraki projelerinize bir katkısı olur.

 

 

Bu projenin kodlarında kullandığım Local ID’lerin listesine şuradan ulaşabilirsiniz:

http://www.microsoft.com/globaldev/reference/lcid-all.mspx

 

 

Farklı makalelerde tekrar görüşmek üzere.

 

 

Yağız GÖNÜLER

yagizgonuler@gmail.com