Şu anda "Programlama" Kategorisindeki yazıları görüntülemektesiniz.

J2ME (Java ME) konusunda, Türkçe kaynak!

431 gün önce tarafından yazılmıştır.

Bitirme projemiz için uğraşırken, Melih Sakarya hocanın yayınladığı pdf dökümanları buldum. Neredeyse bir kitap büyüklüğünde olan kaynakta aradığınız bir çok konuyu bulabilirsiniz. Özellikle konusunda faydalı bilgiler yer alıyor. Java ME () adı eskiden olarak kullanılırdı. Bu arada Melih Sakarya’yı geçmişte Üniversitemize davet etmiştik, malesef haftaiçi gelemeyeceğini belirtmişti. Umarım ilerleyen günler de Trakya Üniversitesine gelebilir…

1- Giriş PDF

2- Mimari PDF

3- Formlar PDF

Error establishing a database connection

530 gün önce tarafından yazılmıştır.

Yukarıdaki a database hatasını aldığınızda, phpMyAdmin, veritabanına bağlanamıyor demektir. Bunun en büyük nedenlerinden biri de şifrenizi değiştirmeniz olabilir. Kullandığınız sistem; WordPress, Blogspot tarzı hazır bir sistemse, siz bu sistemlerin, config dosyalarına veritabanı adı ve şifrenizi yazarsınız. Ancak sonradan yapacağınız değişikliklerde giriş izni ortadan kalkacaktır. Bu da yukarıdaki hatayı almanıza sebep olabilir.

Çözüm için değiştirdiğiniz şifreyi, config dosyalarınızdan güncelleyiniz.

Sorunsuz klasör şifreleme

630 gün önce tarafından yazılmıştır.

Bazen kullandığınız ortak bilgisayarda başka kullanıların görmemesi gereken klasörler olabilir. Bu klasörleri gizlemek ya da şifrelemek istersiniz. Bir klasörü gizlemek bu sorun için yapılabilecek en basit ve en güvensiz çözümdür. Keza kullanıcı “gizli dosyaları göster” diyerek, ulaşılmasını istemediğiniz klasöre erişebilir. En güvenli çözüm klasörü gizlemektir, bunun için piyasada bir çok program bulunmaktadır. Fakat bir çoğu sorunludur; format attığınızda dosyalarınıza ulaşamazsınız, şifrenizi unutabilirsiniz vb. Şimdi size aşağıda vereceğim kod bloğu ile tüm bu sorunlardan kurtulabilirsiniz.

Yapmanız gereken, aşağıda kodlarını okuyabildiğiniz, güvenli kodu bir notepad aracılığı ile açmak ve *.bat olarak kaydetmek olacaktır. Aşağıda kırmızı ile gösterdiğim kısım, şifrenizi yazacağınız kısımdır. Bu *.bat olarak kaydetme olayını biraz daha açıklamamız gerekirse, bir notepad açıp aşağıdaki kodu kopyalayın. Ardından dosya özelliklerinden uzantıları göster yapıp, *.txt olan uzantıyı *.bat çevirebilirsiniz. Dosyaya vereceğiniz isim önemli değildir. Bir diğer yol notepad ekledikten sonra, farklı kaydet diyerek, dosya uzantısına ilhan.bat gibi bir isim verebilirsiniz.

Bu uzantı değiştirmeyi yaptığınızı varsayarak devam ediyorum. Şimdi ise aşağıda kırmızı olarak işaretlediğim kısma şifrenizi yazıyorsunuz. Daha sonra bu oluşturduğunuz bat dosyasını açıyoruz. Tıkladığınız yerde ilhanbaharCom adlı bir oluşturacaktır. Bu klasörün içersine gizlemek istediğiniz dosyaları atıyorsunuz. Daha sonra dosyamıza bir kez daha tıkladığımızda hem gizleniyor hem de şifrelenmiş oluyor. Tekrar dosyalara ulaşmak istediğinizde, oluşturduğunuz dosyaya tekrar tıklayarak şifrenizi yazıp açabiliyorsunuz. Bu kadar basit. Takıldığınız yerleri yine sorabilirsiniz. Devamını Oku

2 saatte bir mail atan Windows Servis

650 gün önce tarafından yazılmıştır.

Bilgisayarda biz farkında olmadan arka planda sessiz sedasız çalışmalarını yürüten, hizmetlerden bahsedeceğiz. BilgisayarımYönetHizmetler gelerek bahsettiğim hizmetleri görebilirsiniz. Projemde bana lazım olan 2 saatte bir kontrol yapan, bir Windows servis yazacağız.

Yazacağımız Windows servis, bir Timer aracılığı ile  Mssql veritabanımızı kontrol edip, istediğimiz koşul gerçekleştiğinde, mail gönderecektir. Sanırım burada açıklamaktansa kodları yazmak daha anlaşılır olacaktır.

Bu arada kısımlarını değiştirdim, oraları kendi server bilginize göre düzenlersiniz. Aşağıdaki kodları Setup olarak kurup, istediğiniz server‘da çalıştırabilirsiniz.

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Linq;
using System.ServiceProcess;
using System.Text;
using System.Timers;
using System.Data.SqlClient;
using System.Net.Mail;
using System.Net; Devamını Oku

Kullanışlı DAL(Data Access Layer) ile connection cümlesi

680 gün önce tarafından yazılmıştır.

Bugün şirket için yazılan DLL‘e eklenmek üzere, bir fonksiyon yazdım. Bu fonksiyonu kendi projelerimde de içersinde fonksiyon olarak kullanıyorum. Tamamen kodun dinamikleşmesine dönük, fonksiyona gönderilen 2 tane string dizi ve bir tane normal string olmak üzere 3 parametre almaktadır. Bu parametlerden ilk string dizi, istenilen sayıda alan adının alınmasını sağlarken, diğer dizi istenilen sayıda tablodan çekilmesini sağlamaktadır. Son kısımda girilen şart string‘i ise “where” olarak girebileceğiniz, koşulu belirtmektedir. Son şart stringine boş değer göndererek sadece select ifadesinin çalışmasını sağlayabilirsiniz. Bu fonksiyonda bir kaç ufak değişiklik yaparak, INSERT, UPDATE işlemlerini de daha dinamik bir hale getirip, burada paylaşacağım.

public static SqlConnection conn = new SqlConnection(@”data source=GIFTEDSQLEXPRESS;integrated security=sspi;initial catalog=Ticket”);
public static DataTable Baglan(string[] alanAdlari, string[] tabloAdlari, string Sart)
{
string alanToplam = “”;
string tabloToplam = “”;
int say = 0;
//Gelen alan adlarının içeriğini bu kısımda birleştiriyoruz
foreach (var item in alanAdlari)
{
alanToplam = alanToplam + “[" + alanAdlari[say] + “]” + “,”;
say++;
}
alanToplam = alanToplam.Remove(alanToplam.Length-1,1);
say=0;
//Gelen tablo adlarının içeriğini bu kısımda birleştiriyoruz
foreach (var item in tabloAdlari)
{
tabloToplam = tabloToplam + tabloAdlari[say] + “,”;
say++;
}
tabloToplam = tabloToplam.Remove(tabloToplam.Length – 1, 1);
say = 0;

SqlCommand comm = new SqlCommand(“SELECT ” + alanToplam + ” FROM ” + tabloToplam + ” WHERE ” + Sart +”", conn);

Devamını Oku

Gridview üzerinde güncelleme, online güncelleme

681 gün önce tarafından yazılmıştır.

Bugün bir saatimi sırf, üzerindeki verinin anında kaybolmasına harcadım diyebilirim. İnternet’i araştırdığınızda genel olarak, yeniden yükleme ve gridview.bind() çözümü ile karşılaşırsınız. Ancak iki yönteminde istediğini karşılayamaz. Aşağıya ekleyeceğim kod satılarında, sorunu nasıl aştığım açıkça belli oluyor. Fakat kısaca anlatmak gerekirse, genel olarak herkes gridview satırlarından aldığı veriyi rahatça veritabanından silebiliyordu, fakat gerekli olan gridview güncellemesi yapılamıyordu, () yaptığımızda zaten ekran gidiyordu. Sorunu aşmak için öncellikle veritabanından sildim, ardından ilgili satırı visible özelliğiyle yok ederek sorunu aştım. Sizinde aynı çözümle sorunu aşacağınıza inanıyorum. Herkese kolay gelsin…

protected void grdRapor_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
//Atilla for you :)
string id = grdRapor.Rows[e.RowIndex].Cells[1].Text.ToString();
string plaka = grdRapor.Rows[e.RowIndex].Cells[3].Text.ToString();
string baslangicTarih = grdRapor.Rows[e.RowIndex].Cells[7].Text.ToString();
string conString = “Data Source=GIFTED\SQLEXPRESS;Initial Catalog=Arac_Takip;Integrated Security=True”;
SqlConnection = new SqlConnection(conString);
connection.Open();

Devamını Oku

Asp.Net Excel’e veri aktarmak

684 gün önce tarafından yazılmıştır.

Aşağıdaki kodları bir butona yerleştirdiğimizde, oradaki “Gridviewiniz” kısmını kendi ayarlayarak, verilerinizi olduğu gibi ‘e aktarabilirsiniz. Rapor.xls olarak masaüstüne kaydedecektir.

HtmlForm form1 = new HtmlForm();

        form1.Controls.Add(Gridviewiniz);

        Response.Clear();

        Response.ClearHeaders();

        Response.ClearContent();

        Response.ContentEncoding = System.Text.Encoding.GetEncoding(“windows-1254″);

        Response.Charset = “windows-1254″; //ISO-8859-13 ISO-8859-9  windows-1254

        System.Web.HttpContext.Current.Response.AddHeader(“content-disposition”, “attachment;filename=Rapor.xls”);

        Response.ContentType = “application/vnd.ms-excel”;

        System.IO.StringWriter stringWrite = new System.IO.StringWriter();

        System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);

        Gridviewiniz.RenderControl(htmlWrite); Devamını Oku

Tc Kimlik No onaylama

691 gün önce tarafından yazılmıştır.

Türkiye Cumhuriyeti vatandaşı olan herkesin bir adet No” bulunmaktadır. Tüm işlemlerimizde kullandığımız “Tc Kimlik No” nasıl hesaplandığını biliyor musunuz? Bir projede sizden “Tc Kimlik No” onaylanmanız istendi, ne yapacaksınız? Hemen başlayalım; Öncellikle “Tc Kimlik” çok basit bir algoritması var. Tc Kimlik No, 11 haneden oluşmaktadır. Son iki hanemiz, ilk 9 haneden türetilmektedir.

* İlk hane 0 olamaz.
* 1. 3. 5. 7. ve 9. hanelerin toplamının 7 katından, 2. 4. 6. ve 8. hanelerin toplamı çıkartıldığında, elde edilen sonucun 10′a bölümünden kalan, yani Mod10 bize 10. haneyi verir.
* 1. 2. 3. 4. 5. 6. 7. 8. 9. ve 10. hanelerin toplamından elde edilen sonucun 10′a bölümünden kalan, yani Mod10 bize 11. haneyi verir. Devamını Oku

C++ Operatörleri aşırı yüklemek

726 gün önce tarafından yazılmıştır.

‘da bazı operatöleri ezerek, istediğimiz amaca hizmet etmesini sağlayabiliriz. Örnek vermemiz gerekirse; a+b işleminde “+” işaretini “-” yapmasını söyleyebiliriz. Böylece programda her hangi bir yerde toplama yapılması gerekirse, program otomatik olarak çıkarma işlemi gerçekleştirecektir. Aşağıda +, – , ++, – operatörlerini değiştirdik. Yeni bir görev eklemek yerine varolan görevlerini biz yazdık. Kodu incelediğinizde anlayacaksınızdır.
#include “stdafx.h” //VisualStudio için gerekli
#include //cout ve cin için gerekli
#include //getch() fonksiyonu için gerekli
using namespace std;

class aYukle
{
private:
int x,y,z;
public:
aYukle() //Öncellikle bir sorun çıkmaması için ilk değerleri atıyoruz.
{
x=0;
y=0;
z=0;
}

Devamını Oku

Kuyruk (Queue) Mantığı C++

768 gün önce tarafından yazılmıştır.

() veri yapısının programını aşağıdaki istenenlere uygun olarak yazdık.

Kuyruk :: Kuyruk(int N)

// Yapıcı fonksiyonda kuyruğu oluşturacak maksimum düğüm sayısını belirleyiniz.

void ekle(char ch)

// Düğüm sayısı aşılmamışsa ch değişkenini barındıracak bir düğüm ekleyiniz.

char cikar()

// Kuyruk boş değilse en sondan bir düğümü siliniz ve içindeki char tipindeki değişkeni döndürünüz.

char baslangic()

// Düğüm varsa en baştaki düğümün char tipindeki değişkenini döndürünüz.

bool bos()

// Düğüm yoksa true, varsa false döndürünüz.

bool dolu()

// Kuyruk dolu ise true, değilse false döndürünüz.

bool barindirir(char ch)

// Kuyruk içerisinde tüm düğümleri arayarak, ch karakterini barındıran bir düğüm varsa true döndürünüz, yoksa false döndürünüz.

Devamını Oku

Tüm hakları saklıdır. 2008-2012