Hata

Ben bu hata ile bugün tekrar karşılaştığım için yazma gereği duyuyorum sanırım sizler için de yararlı olacaktır. Bu hatayı almanızın muhtemel bir sebebi sağlayıcı makinanızda kurulu olmayabilir. Bu kurulumu gerçekleştirmek için aşağıdaki linki ziyaret edip size uygun olanını bilgisayarınıza kurmaktır. Bunun probleminizi çözmeyeceği de muhtemel olabilir.

http://support.microsoft.com/default.aspx?scid=kb;en-us;239114

Bir diğer sebebi ise Vista kullanıyor olmanız ki olma ihtimaliniz yüksek olabilir (64 Bit). Bu sebepten de bu hata ile karşılaşmış olabilirsiniz. Bu hatayı gidermek için ise sırası ile;

Projenize sağ tuş ile tıklayıp Properties'e tıklayın.
Daha sonra Build sekmesine geçin.
Platform Target bölümünden x86'yı seçin ve Apply butonuna basın.

Çözüm

Hatanız düzelecektir. Eğer daha farklı bir sorun ile karşılaşırsanız Makalenin altına yorum ekleyerek yazabilirsiniz.



Gördüğünüz üzere 10 gündür siteye yazı yazamıyorum. Sebebi ise önümde bulunan DGS engelidir :) Hayatımızın dahi bir sınav olduğunu söylemeye gerek yok sanırım. Ama elimden gelse hiç durmam yazarım. Yazmaya da gayret göstereceğim.

Sınavlarım ötürü bana dua etmenizi Rica Ediyorum.

Şimdiden teşekkürler.

Selametle...



Etiketler : dgs
Kategoriler : SilverLight Visual Studio 2008
Yorumlar : 2 Yorum Yorum Yaz

Selamün Aleyküm Değerli kardeşlerim.

Bir önceki yazımda bahsettiğim gibi Silverlight kullanımı ile alakalı bilgiler vereceğimi söylemiştim. Ayrıca onlarla alakalı makaleler de yazmayı ihmal etmeyeceğim tabi.

Uzun lafın kısası hemen makalemize geçelim. İlk olarak aşağıdaki linkten Silverlight 2.0 Beta 1 'i Visual Studio da kullanmak için gerekli olan Tools'u indirelim.

http://www.microsoft.com/downloads/details.aspx?FamilyID=e0bae58e-9c0b-4090-a1db-f134d9f095fd&DisplayLang=en

İndirip kurduktan sonra VS 2008 'i açınca aşağıdaki seçimleri yapın ve projenizi oluşturun.

Diğer bir adımda aşağıdaki pencereden seçimleri yapın ve tekrar OK'a basın.

Evet. Bunları gerçekletirdiğimizde Projemiz karşımıza gelecektir. Gelen ekran aşağıdaki gibidir.

Page.xaml sayfası bizim Silverlight uygulama sayfamız olacak. Bir dahaki makalemizde size silverlight kontrollerinden ve bunların kullanımlarından bahsedeceğim. Biraz sabır gerektiriyor :)

Selametle...



Bir önceki makalede Asp.net ile mail göndermeyi anlatmıştık. Bunu yapmışken yine System.Net ve System.Net.Mail 'den faydalanarak toplu mail işlemi nasıl gerçekleştirilir onu öğreneceğiz. Ama bu sefer bu işlemi C#.Net ile yapacağız. İlk olarak yapacaklarımız tabiki System.Net ve System.Net.Mail'i eklemek. Aynı zamanda da Text dosyasından toplu mail adreslerini okumak için System.IO 'yu da kullanacağız. Gel gelelim işlemlerimize ilk olarak ekleme işlemlerimizi yapalım.

using

 

System.IO;
using System.Net;
using System.Net.Mail;

Evet. Namespacemize bunları ekledikten sonra geldi Nesnelerimizi eklemeye. Ben ekleyeceğiniz nesneleri ve onların özelliklerini yazıyorum.

5 Tane Textbox ekliyoruz. Bunların özellikleri ve isimleri şöyle olacak.

1.ci Textbox : Name = "txtSunucu"
2.ci Textbox : Name = "txtMailAdresi"
3.cü Textbox: Name = "txtParola" , PasswordChar = "*"
4.cü Textbox: Name = "txtKonu"
5.ci Textbox : Name = "txtMesaj" , Multiline = "true"

1 Tane Listbox : Name = "lblMailler"

2 Tane Button

1.ci Button : Name = "btnYukle"
2.ci Button : Name = "btnGonder"

Bütün bunları oluşturduktan sonra sıra geliyor ihtiyacımız olanlara. Ben süs olsun diye 3 tane de groupbox yaptım ve bunları grupladım. Bunu sizde gerçekleştirebilirsiniz. Daha sonra aşağıdaki kodları btnYukle ve btnGonder in Clik olayına yazdım. Kendinize göre düzenleyin.

 

private void btnYukle_Click(object sender, EventArgs e)
{
try
{
dlgOpenFile.ShowDialog();
if (dlgOpenFile.FileName != "")
{
lbMailler.Items.Clear();
StreamReader srRead = new StreamReader(dlgOpenFile.FileName);
while (srRead.EndOfStream==false)
{
lbMailler.Items.Add(srRead.ReadLine().ToString());
}
srRead.Close();
}
}
catch (Exception ex)
{
MessageBox.Show("Hatalı Yükleme !\n\n" + ex.Message);
}
}

 

private void btnGonder_Click(object sender, EventArgs e)
{
try
{
SmtpClient MailSender = new SmtpClient(txtSunucu.Text);
MailSender.Credentials =
new NetworkCredential(txtMailAdresi.Text, txtParola.Text);
MailMessage Mail = new MailMessage();
Mail.Body = txtMesaj.Text;
// Mesajınız
Mail.IsBodyHtml = true; // Mail Formatı // Eğer Mailiniz Html Kodu içermeyecekse False olsun
Mail.Subject = txtKonu.Text; // Mailinizin Konusu
Mail.From = new MailAddress(txtMailAdresi.Text); // Gönderen Adresi
for (int i = 0; i < lbMailler.Items.Count; i++) // Gönderilecek Maillerin Yüklenmesi.
{
Mail.To.Add(lbMailler.Items[i].ToString());
}
MailSender.Send(Mail);
// Mailin Gönderilmesi

 

MessageBox.Show("Tüm Mailler Başarı İle Gönderildi");
}
catch (Exception ex)
{
MessageBox.Show("Hata Oluştu :\n\n" + ex.Message);
}
}

Daha sonra programı derleyip çalıştırabilirsiniz. Programın ekran görüntüsünü de vereyim :

Programın kaynak kodlarını indirmek içinde buraya tıklayabilirsiniz.

Yararlı bir makale olması dileği ile.

Selametle...



"Her yiğidin bir yoğur yeğişi vardır." derler. Doğru da derler. Aynı zamanda her programcının da bir kod yeğişi vardır desek yeri vardır yada yazışı mı desek bilemiyorum. Neyse konuya hemen girmekte yarar var. Birçok programcı büyük projelerle veya da komplex programlarla uğraşırken çoğu zaman kod içerisinde kaybolmuşluğu kafayı yemişliği hatta klavye sinirle vurmuşluğu bile olmuştur.

Böyle şeylere yer vermeden programcı olacak insanın yada olmuş olanının(ki olduktan sonra birçok programcının kod yazma stili standart bir hal alır) dikkat etmesi gereken bazı hususlar var. Dikkat etmesinden kastım kod yazarken yapacaklarıdır. Yapması gerekenlerdir aslında. Kod karmaşıklığı çocuğumuzun baş belası oluvermiştir. Bunu aşmanın tek yolu da değişken,nesne ya da tanımlamalarımıza anlaşılabilir isimler ve açıklamalar belirlememizden geçer. Aşağıda örnekleri ile beraber verdiğim kısımları incelemenizi istiyorum. Zira bir programcı iseniz ya da olacaksanız faydasını göreceğinize şüphem yok.

//Değişkenleri kullanırken başlarına onların ne tür bir değişken olduğunu belirtmek
//sizi kod karmaşıklığından kurtaracak ve değikenlerinizi çabuk tanımaya yardımcı olacak
//bir yöntemdir.
// Örnek
string strAd;
int intSayi;
float fltNumber;
//Tabiki bu işlem TextBox , Label, DropDownList, ComboBox vs. Tüm nesneler içinde geçerlidir
//textbox1,textbox2,textbox3 gibi isimler mi daha anlamlıdır yoksa txtAd,txtSoyad,txtMail
//gibi nesne isimleri mi daha anlamlıdır ? Yorum sizin.
//Buna da bir örnek verecek olursak.

TextBox txtAd;
TextBox txtSoyad;
TextBox txtMail;

//gibi tanımlamalar yine okunmayı kolaylaştıracaktır.
//Gelelim önemli noktalardan birine daha.
//Çok kod yazan birisiniz. Yada şöyle büyük bir kod parçacığınız var.
//İçinde birden fazla prosedür vs fonksiyon gibi tanımlamalar nesneler
//birikmiş de birikmiş. Bunları tanımlamanın en güzel yolu Commentlerdir.
//Şu anda benim yaptığım gibi. Hemen bir örnek gerçekleştirelim.

string strAd = "Default"; //Burada bunu kullanmamın sebebi falan filandan ötürü.
int intProgramSayisi = 0; //Burada programın kaç defa çalıştığını belirtmek için tutuyorum.

//gibi
//Böyle tanımlamalar işinizi tamamiyle kolaylaştıracak ve size büyük avantajlar sağlayacaktır.
//Ayrıca ekip çalışması yapıyorsanız bu gibi şeylere mutlak ve mutlak dikkat etmenizde fayda var.
//Zira takım arkadaşınız saatlerce sizin yazdığınız koda bakıp bu adam burda ne yapmak istemiş
//acaba diye düşünmesi Proje Müdürünüzün yada Danışmanınızın pek hoşuna gitmeyebilir :)

faydalı bir Makale olması dileği ile.

Selametle...



Microsoft bu tarihten bayaa bayaa bi önce Coderlerin daha iyi kod okuyabilmesi amacıyla olsa gerek bir font paketi yayınlamıştı. Benim de hoşuma giden birşeydi bu olay çünkü kodları daha net hale getiriyor. Neyse sözü fazla uzatmadan adı Consolas olan bu font paketinin linkini vereyim. Buradan indirebilirsiniz. Bu font paketini merak eden olursa diye aşağıda görünümünü koydum. Sonradan bu ne saçma birşeymiş indirttin bize felan deyip de kızmayın yani :)

Yüklemeden önce :

Yüklemeden sonra :

Hadi hayırlı kullanımlar ;)

Selametle...



Asp.net uygulamalarında Datalist, GridView ve benzeri kontrollerin içerisine eklenen kontrollere erişmek direk mümkün olmamaktadır. Bunu yapabilmek için Öncelikle kontrolün içerisindeki nesneyi bulmamız gerekiyor. Örnek kodumuzu inceleyelim.

(Datalist1.FindControl("Control ID'si") as Label).Text = "Yazı";

Burada Datalist1 kontrolümüz, FindControl komutumuz, as de tanımlayacağımız nesneyi belirteceğimiz ön komut, Label ise kontrolümüzün türü. Buraya Label,Textbox , Button vs gibi kontrol türleri gelebilir. Siz kontrolünüzün türü ne ise onu yazacaksınız.

İşlem bu kadar. Ayrıca unutmadan birden fazla item olduğunda o itemlerin altındakilere erişmek için Datalist1.Items.FindControl komutunu kullanmak yeterli olur.

Hepsi bu kadar.

Selametle...



Bazı komutlar basit ama çok yararlı hale gelebiliyorlar. Aklıma gelmişken geçenin bi yarısı sizde bilgilenin istedim. Diyelim ki bir yazının integer olup olmadığını yani sayısal mı değil mi kontrol ettirmek istiyorsunuz. Bu örnek için hemen formunuza 1 adet Textbox ve Button ekleyin. Textbox ın ismini txtDeger yapıp Button 1 in click olayına aşağıdaki kodu yazmanız yeterli.

int result;
if (int.TryParse(txtDeger.Text, out result))
{
   MessageBox.Show("Girdiğiniz Sayı İnteger : " + result.ToString());
}
else
{
   MessageBox.Show("Girdiğiniz Sayı İnteger Değil !!!");
}

işlem bu kadar. Çalıştırın sonucu görün :)



RSS 2.0
Sor Bakalım...
Arama
  Ara
Paylaş
| Diğer
Destek