DevExpress DXperience Universal 2010.1.5

.NET, ADO.NET, ASP.NET, Visual C#.NET, Yazılım 26 Yorum Yapılmış »

DevExpress ile ilgili yazdığım yazılar blog sayfamda en fazla yorum yapılan, ziyaret edilen bölümler…

http://u2m.me/b!

Bu yazımda DevExpress v2009 Volume 1′i duyurmuşum ancak aradan nerden baksanız 1 yıl geçmiş. Eee linklerin de yenilenmesi lazım haliyle…İşte size DevExpress’in piyasadaki en son sürümü…

DevExpress DXperience Universal 2010.1.5

SEÇENEK 1…

Components/Bileşenler
http://u2m.me/c7

Documentation/Dökümentasyon
http://u2m.me/cc

Localized Assemblies/Yerelleştirilmiş Assembly’ler
http://u2m.me/cb

SEÇENEK 2

DexExpress’in resmi sitesinden DevExpress DXperience Universal 2010.1.5 paketini indirin
http://u2m.me/ce

Aşağıdaki linkten de crack’i indirin
http://u2m.nu/cg

Crack’in uygulayın ve hepsi bu kadar :)

The constructor to deserialize an object of ‘xxx’ was not found

.NET, ASP.NET, Visual C#.NET Yorum Yapılmamış »

Eveeeet başka bir Maykrosoft .NET günlüğüne hoşgeldiniz…Bugünki sorun nedir???

Oturdunuz, çok heveslisiniz, .NET framework kullanarak şahane bir uygulama yazmaya karar verdiniz. Ama o da ne? ISerializable implement eden bir sınıftan türettiğiniz bir sınıfı Deserialize ederken aşağıdaki problemle karşılaştınız.

The constructor to deserialize an object of ‘xxx’ was not found

Ama abi Serialize ederken sorun olmuyo, bu niye böyle yapıyo şimdi? dediğinizi duyar gibiyim :) :) Bill amcaya yine selamlarınızı mı ilettiniz gizliden gizliden, ya da niye gizli olsun, bağıra bağıra :) :)

Durun, rahat bir nefes alın, çözüm burda…

Ne geyik yaptım şaka maka :) Neyse şakayı bir kenara bırakalım arkadaşlar bir süre için. Yukarıda da kısaca bahsettiğim gibi, ISerializable arayüzünü implement eden bir sınıftan türettiğiniz bir sınıfı deserialize ederken yukarıdaki hatayı almanız muhtemel. Bu sorunun nedeni ise ISerializable arayüzünü gerçekleyen bir sınıftan türettiğiniz bir sınıf, ISerializable metotlarını da gerçeklemelidir (serialization ve deserialization işlemleri için ayrı ayrı). Siz büyük ihtimalle bu kısmı atladınız, es geçtiniz ya da bilmiyorsunuz.

Örnek verelim,

[Serializable]
class Test: Hashtable
{
public
Test()
{
}
}

gibi bir sınıf oluşturdunuz. Görüldüğü üzere bu sınıf ISerializable arayüzünü gerçekleyen Hashtable sınıfından türetilmiş. İşte bu “Test” adlı sınıfımızı deserialize işlemine tabi tuttuğumuzda yukarıdaki hatayı alacağız. Bu hatayı engellemek için ise ISerializable arayüzüne ait,

protected Test(SerializationInfo info, StreamingContext context) : base(info, context) { }

constructor ını da gerçeklemeniz gerekmektedir. Yukarıdaki sınıfa bu constructor da eklenirse yukarıdaki hatanın oluşması engellenmiş olur çünkü bu constructor, ilgili sınıfın deserialization işleminde kullanılır.

Son bir not daha düşelim, eğer serialize etmek istediğiniz ek veriler varsa, ISerializable arayüzüne ait GetObjectData() metodunu da gerçeklemeniz gerekiyor arkadaşlar. Benden söylemesi…

Cross-thread operation not valid!

Visual C#.NET, Yazılım 12 Yorum Yapılmış »

.NET kullanan yazılımcı arkadaşlar uygulama geliştirirken zaman zaman aşağıdakine benzer bir hata alabilirsiniz;

Cross-thread operation not valid: Control ‘xxxxx’ accessed from a thread other than the thread it was created on.

Bu istisnai durum herhangi bir kontrole ya da kontrolün özelliklerine, kontrolün oluşturulduğu Thread dışında farklı bir Thread üzerinden erişmeye çalışıldığında ortaya çıkıyor. Dolayısıyla bu durum daha çok Multi-Threading gerektiren uygulamalarda karşımıza çıkıyor. Peki bu sorunu nasıl çözeceğiz? İşte bu noktada .NET’in güçlü yapılarından Delegate (Temsilci) lere başvuracağız. Bu sorunu ortadan kaldırmak Delegate’ler ile inanılmaz kolay. Nasıl mı? Şöyle, bir örnekle açıklayalım;

 
delegate void updateLabelTextDelegate(string newText);
private void updateLabelText(string newText)
{
if (label1.InvokeRequired)
{
// worker thread
updateLabelTextDelegate del = new updateLabelTextDelegate(updateLabelText);
label1.Invoke(del, new object[] { newText });
}
else
{
// UI thread
label1.Text = newText;
}
}

burada yapmak istediğimiz şey, uygulamamızın içerisinde bulunan Label1 adlı Label kontrolünün
Text özelliğine farklı Thread’ ler üzerinde de erişebilmek. Öncelikle ilgili kontrolün Text özelliğini değiştiren bir metodu temsil edene bir temsilci tanımlamak (ve tabii ki metodu da). İşte bu amaçla updateLabelTextDelegate adlı, uygulama içerisinde updateLabelText() metodunu temsil edebilecek bir temsilci tanımlıyoruz. Metodumuzun içerisinde ise, ilgili kontrolün eğer faklı bir Thread üzerinden erişilmişse ayrı bir invocation gerektirip gerektirmediğini kontrol ediyoruz. Artık updateLabelText() metodunu gönül rahatlığı ile uygumamızın herhangi bir yerinde, herhangi bir Thread içerisinde çağırabiliriz. Hepsi bu kadar kolay :)

Hepsi bu kadar :)

activeRSS, newGatherer, newsCrawler…

Ben, kendim, Visual C#.NET, Yazılım Yorum Yapılmamış »

Şimdi efendim takip eden arkadaşlar bilirler, www.ahmetbutun.net adresinde verilen haberleri genellikle turk.internet.com web sitesinden, kaynak göstererek yayınlıyordum sitemde. Ama bu yoğunluk içinde ancak hafta sonları www.ahmetbutun.net ‘e yeni haberler felan girebiliyordum. Son dönemlerde ise hiç ilgilenemez olmuştum!

Baktım olacak gibi değil, oturdum yukarıdaki programı yazdım C# ile. Peki ne yapar ne eder bu program? Daha önce belirlenen RSS bilgilerinden web sitem için otomatik olarak haberleri benim için alıyor ve web sitemde yayınlıyor. Artı beni de haberdar ediyor, bak bugün şunu şunu ekledim siteye diye! Tam olarak bir RSS okuyucudan bir adım ötede bir yazılım. RSS okuyuculardan farklı olarak, RSS linkini takip ederek ilgili içeriğe ait web sayfasını parse ederek, habere ait içeriği de alıyor!

Yani misal, turk.internet.com ‘un Yazılım kategorisindeki RSS bilgileri http://turk.internet.com/rss/cat-19.rss adresinde yayınlanıyor. Girip baktığınızda göreceksiniz zaten, RSS öğelerine ait başlık ve kısa bir özet var sayfada. Dolayısıyla buradaki kısa özeti kullanıp sitede yayınlamak mümkün değil. Bu yazılım ile RSS öğelerine ait linki takip ediyoruz efendim, ilgili sayfaya bir HTTP isteği gönderip gelen cevabı parse -parse işleminde daha önce derinweb.com arama motorunu geliştirirken kullandığım HTML parser’ı kullandım- edip, haberle ilgili içeriği alıyoruz. Tabi bunların hepsi otomatik olarak gerçekleştiriliyor. Sonuç olarak web siteme haber bulma, girme gibi bir derdim kalmadı artık.

Büyük kolaylık valla :) Umarım yayın hakları ile ilgili bir problem yaşamam!

DVD kütüphanenizi oluşturun

Sinema, Visual C#.NET, Yazılım Yorum Yapılmamış »

Bilen bilir, geniş bir film arşivim var benim (DVD+Divx 1000′e yakın) ve bu arşivi kontrol altında tutmakta zorlanıyorum. Geçenlerde internette gezinirken CodePlex‘te DVDLib adlı aşağıdaki programa rastladım. Şu an beta sürümü (İngilizce, İspanyolca) yayında ve kodları açık. 

Uygulamayı yazan arkadaş ImdbServices adlı, imdb.com ‘dan online film bilgilerini download edebilen bir kütüphane de yazmış. Uygulamanın bir kaç eksiği var doğal olarak. Gayet kullanışlı ama benim için tek kötü tarafı VB.NET’ te yazılmış olması. Mevcut kodları kullanarak C#.NET’e çevirmeyi planlıyorum uygulamayı. Belki arkadaşla görüşüp C# versiyonu olarak CodePlex’te yerini alabilir :) Hadi bakalım…

Proje sayfası için http://www.codeplex.com/dvdlib

DevExpress

Visual C#.NET, Yazılım 35 Yorum Yapılmış »

Developer Express yazılım geliştirici arkadaşlar için ağırlıklı olarak Borland Delphi, C++ Builder ve Microsoft Visual Studio için yardımcı araçlar ve bileşenler (component) üreten bir şirket. Delphi ve C++ için yazılan componentlerini pek kullanma fırsatım olmadı ama Visual Studio için yazılanlar çok kaliteli gerçekten. Visual Studio içerisinde standart gelen componentlerin pek çok eksiğini kapatmış arkadaşlar yazdıkları componentlerle ve bileşenlerin pek çoğunda Ajax teknolojisi de kullanılmış ve componentler daha kullanışlı ve göz alıcı hale getirilmiş.

Delikanlılar bir de Skin editoru yazmışlar bileşenler için, mevcut skin hoşuna gitmedi mi al yanına bir tasarımcı arkadaş, otur kendi stilini oluştur, assembly’sini oluştur, sonra da git Visual Studio içerisine export et, register et, paşa paşa kullan. Ohhhhh :)

Hepinize şiddetle tavsiye ediyorum. 40′a yakın component free of change :P Ohhh ohhh ohhhh, yarasın….


Tasarım:FoxTheme & Photoshop Brushes | Türkçe Çeviri:denizakin.com
Yazılar RSS Yorumlar RSS Log in