The page size was not large enough to format the contents of an object in the report.
Evet başlıkta gördüğünüz hatayı alıyorsanız projenizde muhtemelen benim yapmış olduğum hataya siz de düştünüz
Muhtemelen raporunuzda birkaç tane subreport kullanıyorsunuz. Bu hatanın sebebi subreportların raporunuz Page Header denen kısmında olması. Tabi subreportlarda çekilen veri çok olunca sayfaya sığmıyor. Eee tabi veriler de Page Hader kısmında yani sayfa başlığı kısmında olunca bu rapor için illegal bir durum oluyor. Çünkü Crystal Report ‘ta sayfa başlığı(Page Header) kısmı 1 sayfadan fazla olamaz.
Çözümü ise çok basit. Subreportları Details bölümüne koymanız gerekiyor. Gördüğünüz gibi çok basit hatalar çok büyük sonuçlar doğuruyor yazılım sektöründe.
Page Header –>> Details

Hata ekran görüntüsü
PagingDataGridView 2.0 Component
PagingDataGridView komponentinin biraz daha işleç ve görsel olarak geliştirilmiş halidir. Bu da aynı şekilde C# ile yazıldı. Yazılan her fonksiyon ya da özellik için dökümantasyon yapmadım arkadaşlar. Zaten bunun için de pek zamanımın olduğu söylenemez. Dökümantasyon yerine örnek bir test programı yazdım. Yalnız test programında komponentin tüm özellik ve eventlerini kullanmadım. Kurcaladıkça öğrenirsiniz. Zaten kullanımının da zor olduğunu düşünmüyorum.
Test programından görünüş:

PagingDataGridView Component
Komponentin Kaynak Kodlarını İndirmek için TIKLA
Test Programının Kaynak Kodlarını İndirmek için TIKLA
Komponenti İndirmek için TIKLA
Not: Komponent .Net Framework 3.5 ‘e göre derlenmiştir. Kaynak kodları Visual Studio 2008 projesi şeklindedir. Bundan sonrası size kalmış arkadaşlar. Geliştirmek ve kullanmak sizin elinizde.
PagingDataGridView Component (Datagridview ‘de veriyi sayfalı yapıda gösterme)
C# ile yazdığım PagingDataGridView komponeti. Bu komponent ile datagridview ‘de gösterilen veriler aşağı kaydırma çubuğuna gerek kalmadan sayfalara bölünerek sayfa sayfa gösterilir. İleri, geri, ilk ve son butonları ile sayfalar arasında dolaşabilirsiniz. Ayrıca “Page” isminde bir değişken tanımladım. Bu değişkene atadığınız değer ile de direk istenen sayfaya ulaşılabilmekte. Bunların haricinde kullanımı normal datagridview kullanımı gibi arkadaşlar.
Komponentin örnek görünümü:

Komponent örnek görünümü
Komponenti İndirmek için TIKLA
Kaynak Kodlarını İndirmek için TIKLA
Not: Komponent .Net Framework 3.5 ‘e göre derlenmiştir. Kaynak kodları Visual Studio 2008 projesi şeklindedir. Bundan sonrası size kalmış arkadaşlar. Geliştirmek ve kullanmak sizin elinizde.
C# Otomatik PC Kapatma Programı
YouTube ‘ye Programsız ve Sitesiz Giriş
Geçenlerde internette dolaşırken bir bilgi ile karşılaştım. youtube.com sitesine giriş için herhangi bir program ya da site gerektirmeden girişten bahsediyordu. İlk başta her zamanki gereksiz bilgilerdendir diye düşündüm. Ama daha sonra denemeye karar verdim. Gerçekten de işe yarıyordu. Ne programla ne de proxy sitesi ile uğraşmanız gerekiyor.
İnternette bu bilgi hızlı yayılır diye tahmin ediyordum. Ama gördüğüm kadarıyla insanlar hala proxy siteleriyle uğraşıyorlar. Ben de bu bilginin yaygınlaşmasına biraz daha önayak olayım dedim. Neyse çok konuşmadan detaya geçelim:
Windowsun kurulu olduğu bölümde (C, D, E, vb…) şu yolu izliyoruz:
BölümAdı (C,D,E vb…)/WINDOWS/System32/drivers/etc
klasörü içine geliyoruz. Burda bulunan hosts dosyasını aç deyip not defteri ile açıyoruz ve en altına şu satırları yazıyoruz:
208.117.236.70 www.youtube.com
208.117.236.70 youtube.com
daha sonra kaydediyoruz.
Burdaki mantık ip adresine isim atamak. isterseniz sadece 208.117.236.70 ile web tarayıcınızdan girmeyi deneyebilirsiniz. Göreceksiniz ki başarılı bir şekilde giriş yapılıyor. Ben XP ile denedim. Vista ile de çalışıyordu.
Artık bu işlemlerden sonra youtube ‘de video seyretmenin değeri paha biçilemez
C# ile Kaspersky 5 – 6 – 7 Trial Keyi Sıfırlama
Uzun bir aradan sonra merhaba arkadaşlar…
Şimdi Kaspersky 5-6-7 için geçerli olan bir yöntemin C# kaynak kodunu vereceğim. Bu sayede sanal alemde bulunmayan keylerle ya da kara listeye alınan keylerle uğraşmayacaksınız. Kodumuz çok basit zaten. Hemen anlatıma geçelim:
Projenin başına:
using Microsoft.Win32;
ekleyin. Daha sonra bir tane buton ekleyin. Butonun içine şu kodları yazın:
Registry.LocalMachine.CreateSubKey(@”SOFTWARE\\KasperskyLab\\LicStorage\\”).DeleteValue(“kav”);
Registry.LocalMachine.CreateSubKey(@”SOFTWARE\\Microsoft\\Cryptography\\RNG”).DeleteValue(“Seed”);
Registry.LocalMachine.DeleteSubKeyTree(@”SOFTWARE\\Microsoft\\SystemCertificates\\SPC\\Certificates”);
Registry.LocalMachine.CreateSubKey(@”SOFTWARE\Wow6432Node\KasperskyLab\LicStorage\”).DeleteValue(“kav”);
Projenizi derleyin. çalışma işlemi şu şekilde: Kasperky’i kapatın. Daha sonra derlediğiniz projeyi çalıştırın ve bir kere butona basın. Kaspersky programını tekrar açın. Program açılır açılmaz bir pencere gelecektir. Burdan 30 günlük trial versiyonu seçin. Bu işlemi her 30 günde bir yapabilirsiniz.
Not: Kaspersky Internet Security kullananlar DeleteValue(“kav”); yazan yerdeki “kav” yerine “kis” yazıp derleyecekler.
Program derlemekle uğraşmak istemeyen arkadaşlar veya programlamadan anlamayan arkadaşlar için direk çalışır EXE dosyasını ekliyorum. Programın çalışması için .Net Framework 2.0 gerekmektedir.
Kullanılabilir Program için Tıklayın.
Visual Studio 2008 Projesi için Tıklayın.
Java Uygulamayı .NET Platformuna Çevirme
Arkadaslar IKVM.Net ile jar uzantılı dosyalarınızı yani JAVA platformu için yazılan bir uygulamayı .NET platformunda kullanabilmeniz için yapmanız gereken işlemleri göstereceğim.
Öncelikle IKVM.Net için download linkini vereyim:
http://sourceforge.net/project/showfiles.php?group_id=69637&package_id=68631
Burdan IKVM.Net ’in hem kaynak kodunu hem de çalışabilir *.exe dosyalarını indirebilirsiniz.
Şimdi jar dosyamızı nasıl .NET için uygun hale getireceğimizi anlatıyorum:
Başlat -> Çalıştır -> cmd
Açılan konsol ekranında “ikvmc.exe” dosyamızın bulunduğu yola (path) gidiyoruz. Çevirilecek olan jar dosyasını da “ikvmc.exe” dosyasının yanına kopyalıyoruz. Konsol ekranına şu kodu yazıyoruz:
ikvmc hello.jar
Not: Eğer mono kullanıyorsanız ikvmc ’ye GNU Classpath dll ’in nerde oldugunu göstermek zorundasınız. Yani kullanımı şu şekilde değişmiş olacak:
ikvmc -reference:/usr/lib/IKVM.GNU.Classpath.dll hello.jar
Yazıp entere basıyoruz. hello.jar dosyasının yanında hello.exe ya da hello.dll isminde bi dosya oluşmuş olacaktır. Bu dosya bizim .Net platformu için uygun olan dosyamızdır. Yalnız bu dosyayı projenizde kullanabimeniz için projenize indirdiğiniz klasordeki DLL leri de reference olarak göstermelisiniz ya da içine kopyalamalısınız.
Daha fazla bilgi için burayı inceleyebilirsiniz:
http://www.ikvm.net/userguide/tutorial.html#Convert+a+Java+Application+to+.NET
C# ile Windows Live Messenger için Add-in (Eklenti) Yazmak
MSN Messenger programı bilgisayara ilk kurulduğunda add-ins özelliği kapalı olarak gelir. Bunu açmak için ilk etapta şu işlemleri yapmamız gerekir. Daha sonra da add-ins yazma işlemine geçelim.
1. Başlat -> Çalıştır -> regedit komutunu girin.
2. Ekrana gelen Registry Editöründe HKEY_CURRENT_USER\Software\Microsoft\MSNMessenger kısmına gelin ve AddInFeatureEnabled adında bir DWORD anahtarı ekleyin. Daha sonra bu anahtara 1 değerini verin.
3. Bu işlemlerden sonra yazdığımız add-ins “i messengerde kullanabileceğiz.
- İlk etapta Visual Studio ‘da bir Class Library projesi oluşturun.
- Projenin ismi messengerde kullanılacak add-ins ismi ile aynı olmak zorundadır. (Ör: MusaitDegil)
- Şimdi projeye reference eklememiz gerekiyor. Solution Explorer kısmındaki References kısmına sağ tıklayıp Add Reference tıklıyoruz. Gelen pencerede Brose sekmesini açıp “C:\Program Files\Windows Live\Messenger\MessengerClient.dll” bulup ekliyoruz.
- Projeye bir sınıf ekliyoruz. Sınıfın ismi diyelimki Addin olsun.
- Solution Explorer kısmındaki proje ismini sağ tıklayıp Properties tıklıyoruz. Açılan pencerede Assembly name kısmındaki ismi şu şekilde değiştiriyoruz: ProjeAdı.ClassAdı
Örneğimiz de şöyle oldu: MusaitDegil.Addin
- Sınıfımızın başına using Microsoft.Messenger; ekliyoruz.
- 1. MSN Messenger ’da Araçlar -> Seçenekler kısmını açın.
- 2. Gelen pencerede eklentiler sekmesine gelin.
- 3. Messenger’a Ekle butonuna tıklayın ve derlediğiniz DLL dosyasını seçin.
- 4. Daha sonra Uygula ve Tamam butonlarına basın.

Böylelikle add-in messengere eklenmiş oldu.
Add-in ’i kullanacağımız zaman Messenger ’da resimdeki gibi seçerek eklentiyi aktif hale getirin.

Eklentimizin çalışıyor mu bakalım:

Şimdi de MessengerClient.dll dosyasındaki eventleri inceleyelim.

Not: Anlatılanlar Windows Live Messenger 8.1 ve 8.5 sürümleri için geçerlidir.
Youtube Downloader C# Kaynak Kodu ve Programı
YouTube resmi olarak videoların indirilmesine olanak vermese de çeşitli yollardan videoyu bilgisayarınıza kaydedebilirsiniz. Ben de bu kervana katılarak biraz araştırma yaptım ve şu sonuca ulaştım.
Diyelim ki youtube linkimiz şu olsun:
http://www.youtube.com/watch?v=Y8FDHASfnGM
Videonun bulunduğu youtube linkini flashget gibi bir programla indirip sayfanın kaynak kodunu incelediğimizde karşımızda şöyle bir kod parçacığı görülebilir:
var swfArgs = {“e”: “h”, “sourceid”: “y”, “video_id”: “Y8FDHASfnGM“, “l”: 245, “sk”: “hKFaUYE3pk5fS2U5jC2t_gU”, “t”: “OEgsToPDskLWYeQ6SMn1GDItowKg2F-f“, “hl”: “en”, “plid”: “AARFsZaHqHSrKNdwAAAAoAQMYAA”, “sdetail”: “p%3A”};
Bu kodu biraz daha açarsak:
video_id:Y8FDHASfnGM
l:245
t:OEgsToPDskLWYeQ6SMn1GDItowKg2F-f
Dolayısıyla video download linkimiz de şu oluyor:
http://youtube.com/get_video?video_id=Y8FDHASfnGM&l=245&t=OEgsToPDskLWYeQ6SMn1GDItowKg2F-f
Programımız da tamamen burda anlatılan mantığa göre çalışıyor. Yani ilk önce videonun bulunduğu sayfanın kaynak kodları RAM ‘e yükleniyor. Daha sonra içinden çeşitli string işleme yöntemleriyle video linki oluşturuluyor.
Şimdi programımızın kaynak kodlarını verelim:
http://rapidshare.com/files/86593102/youtubedownloader.rar.html
Bu da programın ekran görüntüsü:

Ekran Görüntüsü
Kullanılabilir Program için TIKLAYIN
Kaynak Kodları için TIKLAYIN
Not: Proje Visual Studio 2008 ortamında hazırlandı.
Evet gerisi size kalmış arkadaşlar. Programı indirip inceleyerek mantığını öğrenebilirsiniz.










Necati TUFAN