30 Mart 2009 Pazartesi

Bilgi İşlem Merkezindeydik

Okulumuzun bilgi işlem merkezine gezi düzenlenmişti. Epey bir zaman geçti üzerinden fakat ben fotoğraflara daha yeni ulaşabilmiştim. Neyse ben biraz o günü anlatayım. Okulumuz okutmanlarından Tuna Göksu bize okulumuzun Bilgi İşlem Merkezi hakkında bilgiler verdi. Serverları tanıttı. Gayet hoş bir gündü en iyisi saçmalamaya başlamadan ben susayım resimler konuşsun.
Süleyman Demirel Üniversitesi Bilgi İşlem Merkezi









18 Mart 2009 Çarşamba

Windows 7 Kısa Yolları

Elbette bu kısa yolları ben bulmadım. Brandon Paddock den çeviri yapmaya çalıştım.

Genel
Win+Up: Büyüt
Win+Down: Yeniden Yapılandır / Küçült
Win+Left: Sağa çek
Win+Right: Sola çek
Win+Shift+Left: Sol monitöre atla
Win+Shift+Right Sağ: monitöre atla
Win+Home: Diğer bütün pencereleri küçült / yeniden yapılandır
Win+T :İlk görev çubuğu girdisine odaklan
Win+Shift+T: Görev çubuğu girdilerinde geriye doğru gezin
Win+Space: Masaüstüne göz at
Win+G: Bütün pencereleri üç boyutlu şekilde sırala
Win+P: Harici görüntü cihazı seçenekleri (aynalama, masaüstünü genişletme, etc)
Win+X :Mobility Center (Vista’da da bulunuyor)
Win+#(# = herhangi bir sayı) Görev çubuğunda hangi sırada hangi uygulama varsa onunla ilgili pencereyi açar ya da bu uygulamayı başlatır.
Örnek: Win+1 görev çubuğundaki birinci uygulamayı Win+2 ise ikinci uygulamayı açar.
Win + +
Win + - (artı ya da eksi tuşu) Yakınlaştır ya da uzaklaştır.

Explorer
Alt+P Önizleme penceresini göster/sakla

Görev Çubuğu Düzenleyicileri
Shift + İkona tıkla Yeni bir “instance” açma
İkonun ortasına tıklama Yeni bir “instance” açma
Ctrl + Shift + İkona tıkla Yönetici yetkileriyle yeni bir “instance” açma
Shift + İkona sağ tıkla Pencere menüsünü göster (Yeniden Yapılandır / Küçült / Taşı / vs)
Not: Normalde ikon üzerine fare ile geldiğinizde açılan küçük resim üzerine sağ tıklayınca da aynı işlev görülüyor.
Shift + Gruplanmış İkona sağ tıkla Açık bütün pencereler için seçenekler (Yeniden Yapılandır / Küçült / Taşı / vs)
Ctrl + Gruplanmış İkona tıkla Grup içerisindeki pencerelerde dolaş

17 Mart 2009 Salı

Windows 7


Microsoft u pek fazla övmek istemiyorum ama sanırım bu sefer yapması gerekeni yapmış. Sırasıyla Windows 7 hakkında izlenimlerimden bahsedeyim.

Öncelikle format atmayı seven birisiyseniz windows 7 ye hayran kalacaksınız çünkü kurma işlemi ortalama olarak sadece 15-20 dk arasında gerçekleşiyor. Siz dosyaları bu kadar geç kopyaladı kuruluma ne zaman geçer derken o size kurulumun tamamlandığını haber veriyor.Windows 7 ile artık donanımlarınızı tanıtmanız için çok fazla zaman harcamayacaksınız zaten şuan için donanımların %95i tanıyor ve ekstra olarak vista sürücülerini de kullanabiliyorsunuz.-Ama benim acer’im da hala tanımadığı bir donanım var –

Bilgisayarı ilk açdığınızda fark edeceğiniz özellik hızı olacak yaklaşık 40 saniye sonra masaüstünde oluyorsunuz.

Windows 7 de dikkat çeken özelliklerden biriside Görev Çubuğu ile her şey elinizin altında olması. Pencereler ile zaman harcamak zorunda kalmıyorsunuz. Gruplanmış dosyaları ön izleme yapabiliyor ve hatta bu ön izlemelerden kapatabiliyorsunuz.

Dosyalarınız arasında dolaşırken hiçbir bekleme yapmanıza gerek kalmıyor xp den daha hızlı diyebilirim.

Dizüstü kullananlar bilgisayarlarını daha uzun süre açık tutabilecekler çünkü Windows 7 gereksiz processlerden sizi haberdar ediyor.Windows 7’nin özelliklerinden bir tanesi de send feedback. Windows 7 yi kurduğunuzda masaüstünde beliren bu özellik sayesinde windows 7 ile herhangi bir sorununuz olduğunda microsft ile iletişime geçebiliyorsunuz. Bunun için katagoriyi belirleyip derdinizi aktardıktan sonra go go go demeniz yeterli. Ben hiç denemedim ama galiba istekler üzerine windows 7 yi düzenliyorlarmış -bana hiç de inandırıcı gelmedi- Belki Send FeedBack özelliğini Kapatmak isteyebilirsiniz. Bunu için Docums.NET’i ziyaret etmeniz gerekecek.
Pencerelerin ebatlarını değiştirmek emin olun hiç bu kadar kolay olmamıştı. Sayfayı tam ekra n ya da sağ sola hizalama yapabilmek için pencereleri sürekleminiz yeterli. Eski haline geri getirmek için de pencereyi sürükleyerek biraz aşağı çekiyorsunuz. Bu işlemleri kısa yollarlada yapabiliyorsunuz o konuya birazdan değineceğim.
Windows 7 de wordpad,paint ve hesap makineside elden geçirilmiş. Wordpad ve paintte office 2007 temasına benzetilmiş. Hesap makinesi de artık yeniliklere ayak uydurabiliyor.
Artık Kullanıcı Hesapları kontrolü size nefes aldırıyor.Yeni filtreleme sistemi ile Vista’da ki gibi bu çalışsın mı o çalışsın mı diye size bunalıma sokmuyor.
SideBar Windows 7 ile birlikte değişime uğramış artık sağ tarafta çivilemişsiniz gibi durmuyor, onun yerine sidebardaki araçları masaüstünüzde serbestçe dolaştırabiliyorsunuz.

Wi-fi ağları arasında geçiş apmak için trayde bir tıklama yeterli oluyor.-Bence gayet hoş bir yenilik ama henüz kullanma fırsatım olmadı tek bir ağ var :) –


Windows 7 de bazı özellikleri iptal edebilmek için bu işten anlamanız gerekmiyor. Sistem Tray simgelerini istediğiniz gibi belirleyebilip istemediğiniz baloncuklardan kurtulabiliyorsunuz.
Windows 7 ile birlikte Print Sreen tuşunu terk ediyoruz. Başlat menüsünde de görebildiğiniz gibi Snipping Tool ekrandaki görüntünde seçtiğiniz alanı istediğiniz formatta kaydetmenize olanak sağlıyor. Burada gördüğünüz resimlerin bir çoğu onunla oluşturuldu.
-Exstralar-
Windows 7 de usb belleğinizin ne kadarı dolu grafiksel olarak görebiliyorsunuz.-Sanırım bu özellik vista da yoktu-
Dizüstü Bilgisayarlarda Pil Ömrümü daha bi fazla gidiyor(xp'den dahi daha fazla)
Masaüstünüzde ki balığın cinsi beta.

16 Mart 2009 Pazartesi

C# Process Uygulaması

Evet uzun bir süreden sonra tekrar buradayım. Bugün Process’lerden bahsediyoruz. Windows üzerinde çalışan uygulamara proses diye bahsediyoruz. Prosesleri şu şekilde takip edebilirsiniz. Task Maneger(Görev Yöneticisi) – View- Select Columns’a girip PID(Process Identifier)’i aktif etmeniz gerekiyor. Bunu aktifleştirdiğinizde Process sekmesinde yeni bir alanın daha aktif olduğunu göreceksiniz. İşte o aktif olan PID numaraları Windows tarafından her uygulamaya eşsiz verilen numaralardır. Herhangi bir uygulama çalıştırıp ya da sonlandırdığınızda programları buradan takip edebilirsiniz.Proseslerin ne olduğu ile ilgili daha tedaylı bilgi için İngizlice-Process ya da Türke-Process e bakabilirsiniz.
Proseslerin ne olduğundan çok kısa olarak bahsettiğimize göre şimdi C# ile olan alakasına geçebiliriz.
Proseslere erişim için System.Diagnostics.Process Sınıfı kullanacağız isterseniz önce bu sınıfı bazı metotları ile birlikte tanıyalım.
Id: Uygulamaya(Process) işletim sistemi tarafından verilen eşsiz numarayı belirten özelliktir.
ProcessName: Uygulama adını belirten özelliktir.
ExitCode: Uygulamanın çıkış kodunu belirten özelliktir. Bu özellik uygulamanın başarılı çalışıp çalışmadığını döndüren metotdur. Eğer 0(sıfır)’dan farklı bir değer dönerse uygulamanın hata ile karşılaşıp kapandığını belirtir.
ExitTime: Uygulamanın çıkış zamanını belirten özelliktir.
Handle: Uygulamaya işletim sistemi tarafından atanan tanıtıcı değeri belirten özelliktir.
MainWindowTitle: Uygulamanın ana pencere başlığını belirten özelliktir.
Threads: Uygulama tarafında oluşturulan iş parçacık listesini döndüren özelliktir.
Start: Yeni bir uygulama başlatmak için kullanılan metotdur.
Kill: Uygulamayı Durdurmak için kullanılan metotdur.
GetCurrentProcess: Aktif uygulamanın özelliklerine göre yeni process nesnesi döndüren metotdur.
GetProcessesById:İşletim sisteminde çalışan uygulamaya numarası ile erişebilmek için kullanılan metotdur.
GetProcesses: İşletim sisteminde çalışan uygulamaların listesini döndüren metotdur.
CloseMainWindow: Uygulamanın ana penceresini kapatmak için kullanılan metotdur.

Metotları daha iyi anlayabilmek için aşağıda ekran görüntüsünü verdiğim örneği inceleyebilirsiniz…


Umarım Process in c# örneği faydalı olur.

15 Mart 2009 Pazar

CSharpTeam

Bugün proje ile uğraşırken acaba dedim bizim program yazmaya çalıştığımız bu programı kim ya da kimler yazdı. Hemen Google amcaya danıştım o da bana bunu gönderdi. İşte C#'ı yapan abi ve ablalar, sanırım çoğu yazılımcı fabrikası olan hindistanın vatandaşları, artık bu resmi odanızın bir köşesine yapıştırsanız olur bizi sizler varettiniz diye :)

8 Mart 2009 Pazar

Adamlar Biliyor

Bir İgnliiz üvnsertsinede ypalın arşaıtramya gröe, kleimleirn hrfalreiinn hnagi srıdaa ....yzalıdkılraı ömneli dğeliimş. Öenlmi oaln brinci ve snonucnu hrfain yrenide omlsaımyış. Ardakai hfraliren srısaı krıaışk oslada ouknyuorumş. Çnükü kleimlrei hraf hraf dğeil bri btüün oalark oykuorumuşz.
Şmidi sen ktiap okmuak yraarlı dgeil dyibeliir msiin? :)

Hergün 10 Sayfa iyidir....

7 Mart 2009 Cumartesi

Google’da Etkili Arama Yöntemleri

# Google’da Etkili Arama Yöntemleri #

Bir çoğumuzun internet tarayıcıların başlangıç sayfası olmayı başarmış, Bir çok kişi tarafından internet denilince akla gelen ilk site olan Google da etkili arama yapabilmek, aradıklarımızı elimizle koymuş gibi bulabilmek için bazı yöntemleri bilmemiz gerekiyor.

Google da arama sonuçlarında çıkmasını istemediğimiz kelimeleri engelleyebiliriz. Şöyle ki mesela google da Birkan diye arama yaptığınızda Melis Birkan çok rağbet görüyor. Aramanızı “birkan”-“melis” tarzında yaparsanız Melis Birkan sonuçlarının hiçbirisi ile karşılaşmayacak ve arama sonuçlarınız 747.000 ‘den 121.000 ‘ e düşecektir. Buda aramalarınızı çok çok daha kolaylaştıracaktır. Google da fazla kelime ile arama yapmak daha iyi sonuçlar doğurur fakat anahtar kelimeler iyi seçilmelidir.

Google da Stop Words ler bulunmaktadır. Bu sözcükler Google aramalarında hiçbir anlam ifade etmemekte şöyle ki aramalarınıza I, a, about, an, are, as, at, be, by, com, de, en, for, from, how, in, is, it, la, of, on, or, that, the, this, to, was, what, when, where, who, will, with, und, the, www gibi kelimeleri direkt olarak eklediğinizde google bunları göz ardı edecektir. Bu kelimelerin göz ardı edilmesini engellemke için başına + koyarak arama yamalısınız. Örnek vermek gerekirse “+en güzel site” şeklinde olmalıdır.

Aramalarda Kullanılabilen Gelişmiş Komutlar

Arama detaylarını arttırabilmek için şu şekilde aramalar yapabilirsiniz.

Site: Belli bir site içerisinde arama yapmak istiyorsanız yani birkanaydin.blogspot.com içerisinde c# ile ilgili arama yapmak istiyorsanız |site: birkanaydin.blogspot c# | şeklinde yazmanız gerekir.

intitle: Anahtar kelimenizi belli başlıklar altında aramak istiyorsanız, Başlığında “araba” ve içeriğinde “kaza” sonuçlarını görüntülemek isterseniz |intitle:araba kaza| yazmanız gerekecektir.

Allintitle: Bütün anahtar sözcüklerin başlıklarda aranmasını istiyorsanız, her sözcüğe intitle yazma yerine direk |allintitle:araba kaza resim| gibi arama yaptırabilirsiniz. Eğer bu arama da allintitle komutu kullanılmamış olsaydı, 63 sonuç yerine 573.000 sonuçla karşılaşabilirdiniz.

inurl: Anahtar kelimeyi url’ler içerisinde aramak istiyorsanız -mp3 indirmek isteyenler için birebir- url=womanzier yazmanız yeterli olacaktır.

Allinurl: allintitle ile aynı mantık sadece url ler için geçerli.

Cache: Bu komut ile google o siteyi en son ne zaman indekslediğini belirtir ve indekslediği tarihteki görüntüsünü getiriyor.|cache:sitemkaybolmus.com|-com sanırım etkili olmayacak ama J- Geçici olarak kullanım dışı olan sitelerde işe yarar bir çözüm.

Link: Bahsi geçen siteye hangi sayfa ve belgelerden bağlantı verildiğini inceleyebilirsiniz. |cache:birkanaydin.blogspot| - Ben kendi siteme baktım google tıkandı sonuç veremedi.-

Filetype: Google’ın desteklediği dosya türleri içerisinde arama yapmak istiyorsanız, bu komut tam size göre. Mesela c# ile ilgili pdf formatında bir e-book bulabilmek için | filetype:pdf c# e-book| yazmanız yeterli olacaktır.

Kısa kısa: Aramalarda : dan sonra boşluk bırakmamaya dikkat edin kelimler arasında da mutlaka boşluk bunsun. Eğer aramış olduğunu kelimelerin hepsi bir cümlede geçsin istiyorsanız, yazınızı “ lar arasına almanız iyi olacaktır. Örneğin “neden sağlıklı olmalıyım” :) umarım işinize yarar bilgiler verebilmişimdir. Tekrar görüşebilmek üzere…

3 Mart 2009 Salı

Biraz Mola

Sanırım okul projelerinden dolayı bir müddet blogla ilgilenemeyeceğim. böyle bir açıklama yapıyorum çünkü birileri 1 martta siteme girmiş ve ajax notunu indirmiş demek ki yanlız değilim artık :) bu beni gayet mutlu etti. neyse hadi bakalım en yakın zamanda tekrar görüşmek üzere...

1 Mart 2009 Pazar

#REGISTRY ÜZERİNDE İŞLEMLER#

#REGISTRY ÜZERİNDE İŞLEMLER#

İsterseniz öncelikle regedit nedir? Ne işe yarar ondan bahsedelim. Regedit Türkçe karşılık olarak Sistem Kayıt Defteridir. Peki sistem kayıt defteri nedir? Sistem kayıt defteri programların özelliklerini barındırabileceğimiz microsoft’un oluşturduğu bir veri tabanıdır. Kısaca Regedit sistem kayıtlarının tutulduğu kısımdır.

İlk önce Sistem Kayıt Defterini tanıyalım. Sistem Kayıt Defteri kullanım amacına göre beş farklı mantıksal gruba ayrılmıştır.

HKEY_CLASSES_ROOT: Windows işletim sistemine yüklü uygulamalar ve dosya uzantıları hakkında bilgilerin saklandığı kısımdır.

HKEY_CURRENT_USER: İşletim sistemine giriş yapmış aktif kullanıcı ile ilgili tanımların saklandığı bölümdür.

HKEY_LOCAL_MACHINE: Bilgisayar ve tüm sistem kullanıcılarını ilgilendiren ayarların saklandığı bölümdür.

HKEY_USERS: HKEY_CURRENT_USER grubunda bulunan anahtarlara karşılık gelen bilgilerin saklandığı bölümdür.

HKEY_CURRENT_CONFIG: Anlık konfigürasyon hakkında bilgilerin saklandığı bölümdür.

Kayıt Defteri, Mantıksal gruplar altında bulunan anahtarlar, anahtarlar içerisinde bulunan alt anahtarlar şeklinde organize edilmiştir. Her bir anahtar içerisinde ad,tip, ve değer yapısında istenilen bilgilerin saklanabileceği alanlar bulunmaktadır.

#KAYIT DEFTERİ VERİ TİPLERİ#

Sistem Kayıt Defteri farklı veri tiplerini desteklemektedir. İşte bunlardan bazıları

REG_BINARY: İkili veri tipi.

REG_DWORD: Tam sayı veri tipi.

REG_EXPLAND_SZ: Genişleyebilir karakter dizi değerleri için kullanılmaktadır.

REG_SZ: Karakter veri tipi.

REG_MULTI_SZ: Boşluk veya virgül ile ayrılmış çoklu karakter dizi değerleri için kullanılmaktadır.

#KAYIT DEFTERİ İŞLEMLEMLERİ#

Kayıt Defterindeki bilgilere erişmek ve üzerlerinde işlem yapabilmek için Microsof.Win32.Registry sınıfının metotlarını kullanacağız.

Şimdi bu metot tiplerini biraz inceleyelim.

ClassesRoot: HKEY_CLASSES_ROOT mantıksal grubu içerisinde işlem yapabilmek için kullanılır.

CurrentConfig: HKEY_CURRENT_CONFIG mantıksal grubu içerisinde işlem yapabilmek için kullanılır.

LocalMachine: HKEY_LOCAL_MACHINE amntıksal grubu içerisinde işlem yapabilmek için kullanılır.

Users: HKEY_USERS mantıksal grubu içerisinde işlem yapabilmek için kullanılır.

GetValue: Parametre olarak iletilen anahtar ve ad içerisindeki değeri döndüren metottur. Okuma HKEY_CURRENT_USER grubu içerisinde yapılmaktadır.

SetValue: Parametre olarak iletilen anahtar ve ad içerisine değer yazmak için kullanılabilen metottur. Yazma HKEY_CURRENT_USER grubu içerisinde olur.

Registry.GetValue ve Registry.SetValue metotları, RegistryKey Sınıfı kullanmadan sadece HKEY_CURRENT_USER mantıksal grubu içerisindeki verilere erişim için pratik bir yöntemdir.

Sistem Kayıt Defteri yönetimi için Microsoft.Win32 ad alanı içerisinde tanımlı yardımcı tipler bulunmaktadır.

RegistryKey: Kayıt Defteri içerisindeki herhangi bir anahtarı simgeleyen sınıftır.

RegistryHive: Mantıksal grupları simgeleyen sayılabilir tiptir.

RegistryValueKind: Saklanan veri tipini simgeleyen sayılabilir tiptir.

Evet şimdi bu haftaki ödevimden bahsedeyim. Ödev şu şekilde bilgisayarın açılışında çalışan programların kontrolunu sağlayabilmek. Başlangıçta çalışsın ya da çalışmasın diye.

Programın Ekran görüntüsü bu şekilde

Kodları da şu şekilde

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using Microsoft.Win32;//Registry üzerinde işlem yapabilmek için kullanım kolaylığı açısından bu alanı ekledik.

namespace RegEditOrnek_26_02_2009

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

string run = @"Software\Microsoft\Windows\CurrentVersion\Run";//Registry üzerinde işlem yapacağımız yolları tanıtıık.

string runpasif = @"Software\Microsoft\Windows\CurrentVersion\RunPasif";

RegistryKey anahtar;//isim tanımlamasını yaptık

void RegOku(string RegYol)//RegOku isminde bir metot oluşturduk.

{

anahtar = Registry.LocalMachine.OpenSubKey(RegYol,false);//İşlem yapacağımız registry bölümünü gösterdik.

//ikinci parametre sadece okuma işlemi yapılacağı için false.

listView1.View = View.Details;//tenımlamayı yaptık

ListViewItem oge;

foreach (string ad in anahtar.GetValueNames())//belirlediğimiz bölümdeki ad ve veri yollarını listview'e aktarıyoruz.

{

oge = new ListViewItem(ad);

oge.SubItems.Add(anahtar.GetValue(ad).ToString());

listView1.Items.Add(oge);

if (RegYol == run) oge.Checked = true;

}

anahtar.Close();

}

void RegYaz(string RegYol, string DegerAdi, string DegerYolu)

{

anahtar = Registry.LocalMachine.OpenSubKey(RegYol, true);

RegistryKey Regyaz = Registry.LocalMachine.CreateSubKey(RegYol);//Registry içerisinde yeni bir dizin oluşturuyoruz.

Regyaz.SetValue(DegerAdi, DegerYolu);//Oluşturduğumuz dizine veri girişi yapıyoruz.

anahtar.Close();//Registry ile işimizin bittiğini söylüyoruz.

}

void RegSil(string RegYol, string DegerAdi)

{

anahtar = Registry.LocalMachine.OpenSubKey(RegYol,true);//veri üzerinde işlem yapacaksak ikinci parametre true olmalı.

anahtar.DeleteValue(DegerAdi);//Belirlediğimiz alandaki veriyi siliyoruz

anahtar.Close();

}

void RegKontrol(string RegYol, string DegerAdi, string DegerYolu)

{

int islem=0;

int yol = 0;

if (RegYol == run) yol = 1;

anahtar = Registry.LocalMachine.OpenSubKey(RegYol,false);

foreach (string ad in anahtar.GetValueNames())

{

if (ad == DegerAdi) { islem = 1; break; }

}

if (islem == 0)

{

RegYaz(RegYol, DegerAdi, DegerYolu);

if (yol == 1)

RegSil(runpasif, DegerAdi);

else

RegSil(run, DegerAdi);

}

anahtar.Close();

}

private void Form1_Load(object sender, EventArgs e)

{

RegOku(run);

RegOku(runpasif);

}

private void btnUygula_Click(object sender, EventArgs e)

{

foreach (ListViewItem item in listView1.Items)

if (item.Checked == true) RegKontrol(run, item.Text, item.SubItems[1].Text);

else if(item.Checked==false) RegKontrol(runpasif, item.Text, item.SubItems[1].Text);

listView1.Items.Clear();

RegOku(run);

RegOku(runpasif);

}

private void btniptal_Click(object sender, EventArgs e)

{

Close();

}

}

}
Yok Bunlara rağmen olmadı diyorsan. Belki Registry İşlemleri işini çözebilir.