22 Kasım 2011 | Etiketler:

Arada fırsat buldukça diğer bloglarıda takip ediyorum. Fatih Kurtuluş ‘ ta benim gibi karşısına çıktıkça yazanlardan. Yine güzl bir ipucu vermiş LLBGen kullananlar dikkat.

*Yazılımcılar çok nadir de olsa aynı içeriğe sahip bir sınıfı birden fazla defa kaydetme ihtiyacı duyabiliyor….

Makalenin devamı için Tıklayın

Herkeze merhaba,

Birçok projede karşıma çıkmasına rağmen herseferinde uğraşıp duruyorum bari burda paylaşıyım başka yere bakmıyım.

Asp.Net ile flv videolar göstermek için bir adet swf player’a ihtiyacımız var bunu Flash ile kendiniz de yapabilirsiniz yada hazır yapılmışı var diyip buraya tıklayabilirsiniz.

Elimizde bulunan swf playeri anadizine kopyalayın, şimdilik o öyle dursun biz yazacağımız koda dönelim. Dediğim gibi veritabanında tutacağımız video yolu ile dinamik göstereceğiz.

kodumuz şöyle


                        <asp:DataList ID="datal1" runat="server">
                        <ItemTemplate>

                                <object type="application/x-shockwave-flash" data="player_flv.swf"
                                    width="503" height="306">
                                    <param name="movie" value="player_flv.swf" />
                                    <param name="allowFullScreen" value="true" />
                                    <param name="FlashVars" value="flv=http%3A//www.site.com.tr/<%#Eval("VideoScript")%>&amp;width=503&amp;height=306" />
                                </object>

                        </ItemTemplate>
                        </asp:DataList>

Burda dikkat edilmesi gereken nokta aşağıdaki yerlere swf player linkini vermemiz

                                <object type="application/x-shockwave-flash" data="player_flv.swf"
                                    width="503" height="306">
                                    <param name="movie" value="player_flv.swf" />

burda videonun yolunu veriyoruz

      <param name="FlashVars" value="flv=http%3A//www.site.com.tr/<%#Eval("VideoYol")%>&amp;width=503&amp;height=306" />

ve dikkat ederseniz Datalist içersinde video yolunu Eval ile bağlıyorum buda ne kadar video varsa gelecek demektir bu arada default olarak otomatik başlatı false dir.

iyi çalışmalar

Herkeze merhaba,

C# ile bildiğimiz klasik yöntemler ile (print page, print document vs. vs.) barkod oluşturup bunu yazdırabilirmiyiz ??
Cevap evet,nasıl mı??

İş hayatında hemen hemen herkes bu konuyla ilgili hiçbir bilgisi olmadığı halde uygulama geliştirmeye zorlanmıştır. İşte aynı durum geçtiğimiz günlerde karşıma çıktı.Bir Connection string ve birkaç tablo ismi,ek olarak birde barkod yazıcı.Neyse

Kullandığım Zebra LP 2844 marka ve modelli bir barkod yazıcı.Hemen eski yaptığım uygulamalara göz gezdirdim,Hatırladığım daha önce kullandığım bir class ile bu işi halledebileceğimdi.Class ı makale sonunda paylaşacağım ,class ın yaptığım uygulamadaki görevi verdiğim parametreler ile bana barkod oluşturması.

Peki yazdırma işlemi ?? Kodları görünce bu işin ne kadar kolay olduğunu göreceksiniz.

ihtiyacımız olan class

	PrintDocument doc = new PrintDocument();

Kod kısmında örenğini aldığım PrintDocument classımın  PrintPage eventini yakalamak için 

doc.PrintPage += new PrintPageEventHandler(doc_PrintPage);

 += işaretlerinden sonra <strong>Tab</strong>  tuşuna  2 kez basarsanız 

void doc_PrintPage(object sender, PrintPageEventArgs e)

{

}

oluştuğunu göreceksiniz işte tüm yazdırma işlemleri bu metodun içinde gerçekleşiyor.

yazdırma kodlarını paylaşmadan önce barkodun nasıl oluşturulacağına değinmeliyim.

İndirdiğiniz classı projenize dahil edin.Uygulamanızda clasın örneğini alın

Ean13Barcode2005.Ean13 barcode = new Ean13Barcode2005.Ean13();

oluşturduğumuz barcode örneğinin şu özelliklerine

//bu kod barkodun ilk 2 hanesi -ülke kodu
barcode.CountryCode = "90";

//Bu kod üretici-imalatçı numarası -bu kısımın legal illegal gibi durumları da var
barcode.ManufacturerCode = "1234";

//Bu kod ürün kodu -ID si falanı felanı
barcode.ProductCode = "000001";

//Bu kısım boş geçilsede birşey değişmiyor EAN-13 te zaten 12 veri okuyorsunuz ,bu sayı  barkodun sonunda oluyor.
barcode.ChecksumDigit = "5";

Barkod da oluştuğuna göre Print Page olayımıza dönebiliriz.Kodlar şöyle


void doc_PrintPage(object sender, PrintPageEventArgs e)
{
//Burda Barkod Kağıdının başına Ben büyük Punto ile Başlık-Firma adı yazıyorum
e.Graphics.DrawString("FİRMA ADI", new System.Drawing.Font(new FontFamily("Arial"), 15, FontStyle.Bold), Brushes.Red, new PointF(50, 5));
//Gerekli bir kaç bilgi veriyorum

e.Graphics.DrawString("Telefon : (212) 123 12 12Fax : (212) 123 12 12", new System.Drawing.Font(new FontFamily("Arial"), 8, FontStyle.Bold), Brushes.Red, new PointF(18, 45));
//Burası önemli aşağıdaki kod bakodu yazan kod
barcode.DrawEan13Barcode(e.Graphics, (new PointF(25, 50)));
//Aşağıdaki kodlara ek olarak ben Elektronik Tartı cihazından gelen verileri aktarmıştım

e.Graphics.DrawString("Lot :", new System.Drawing.Font(new FontFamily("Arial"), 10, FontStyle.Bold), Brushes.Red, new PointF(20, 120));

e.Graphics.DrawString("Brt :", new System.Drawing.Font(new FontFamily("Arial"), 10, FontStyle.Bold), Brushes.Red, new PointF(20, 145));

e.Graphics.DrawString("Net :", new System.Drawing.Font(new FontFamily("Arial"), 10, FontStyle.Bold), Brushes.Red, new PointF(20, 165));

}

Evet butonumuz yada yazdırma işlemini uygulayacağımız kontrole Print() metodunu verdikten sonra denemeler yapabilirsiniz. Unutulmaması gereken
kodların sağındaki new pointf ler bunlar sayfadaki koordinat oluyor ve yine unutmamanız gereken şey yazıcınızı kurduktan sonra sağlıklı çıktı almak
istiyorsanız yazıcı özelliklerinizden sayfa boyutlarını belirtmeniz.
Şimdilik bu kadar herkeze iyi çalışmalar.
Barkod Class için TIKLA

herkese merhaba,

Yeni bir proje , yine bir el terminali ve yine sorun

Eğerki sizde TcpListener vasıtası ile serverinize bağlanan clint ları dinleyecekseniz uygulamanızın client tarafındaki bağlantı tarafında – ki burda el terminali oluyor kendisi- 


client= new TcpClient("ip adres",Port);

yerine bu kodları kullanmanız sürekli bağlantı kopmalarının önüne geçecektir.

string ip = "1.1.1.1";
                    int port = 8888;
                    client = new TcpClient();
                    try
                    {
                        client.Connect(ip, port);
                    }

yani direk instance değil ,alınan sınıfın connect methodunu kullanın

iyi çalışmalar

Herkeze merhaba,

Projem ile uğraşırken aldığım bir hata

The timeout period elapsed prior to obtaining a connection from the pool.  This may have occurred because all pooled connections were in use and max pool size was reached.” …..

Bir kez daha anladım ki MySql asla MSSQL ‘ in yanına bile yanaşamayacaktı.Herneyse,eğer böyle bir sorunla karşılaşırsanız bunun olası sebepleri açık unutulan connection lar,commandlar yada DataReader lar…

Tabi o kadar yazdıktan sonra kim uğraşır araki bulasın yok bağlantıydı,comand tı falan ( :

O halde bu sorunu alanların yapacağı fazla birşey kalmıyor POOLİNG isimden korkmayın sadece sorunu aşacağız yazdığınız ConnectionString yoluna şunlarıda ekleyin,

pooling=true;max pool size=1000000;

Sorununuz o andan itibaren çözülmüş olacaktır,tabi siz yinede açık command – connection larıda arayabilirsiniz ( ki unutmayın doğru olan bu değildir, sadece günü kurtarır )

iyi çalışmalar

Eski yazılarıma erişdikçe yayınlamaya devam ediyorum.Bunu sanırım bir yerden almıştım ama şimdi hatırlamıyorum.

İnternette dolaşırken bir kaç yerde facebook sitesinin aynısını görünce nerden çıktı bunlar diye araştırdım ve bulduklarımı paylaşmaya karar verdim.

Peki nasıl yapılıyor bu klon facebooklar bizde yapalım.

Kurulum

  1. Açıklama Çekirdek sistem olarak social engine scriptini kullanacağız facebook temasını yükleyeceğiz
  2. İlk Önce Paketi İndiriyoruz >> Buraya Tıklayarak İndirin
  3. Paketimizi indirdikten sonra içerisindeki Social Engine/public_html klasöründeki dosyaların hepsini ftp de ana dizinimize gönderiyoruz
  4. yükleme işlemi bitince http://www.domainadi.com/keygen.php diyerek açıp lisans kodumuzu alıyoruz kopyalıyoruz
  5. lisans kodumuzu kopyaladıktan sonra http://www.domainadi.com/install.php diyerek kuruluma geçiyoruz lisans kodumuzu yapıştırmayı unutmayın kuruluma geçemezsiniz
  6. veri tabanı kullanıcı adı db adınızı girmeyi biliyorsunuzdur.
  7. ve kurulum bitti admin şifrenizi bi yere not edın veya hemen değiştirin sonrasinda install.php ve installsql.php dosyalarınızı ana dizininizden silin
  8. ve kurulum bitti

Türkçeleştirme

  1. Panelimizden (cPanel ya da Plesk artık ne varsa) PhpMyadmin‘e ulaşıyoruz.
  2. Php Myadmin de şu iki tabloyu buluyor ve bu iki tabloyu siliyoruz; se_languages ve se_languagevars
  3. Tabloları temizledikten sonra içe aktar kısmına gelerek bilgisayarınıza az önce indirdiğimiz paketten tr yama klasöründeki sql tr.sql dosyayı seçin ve yükleyin. (Dikkat Karşılaştırmanın UTF-8 Formatında olmasına dikkat edin yoksa türkçe karakterler saçmalayabilir.)
  4. Social Engine 3.x Versiyonunuz Artık Türkçe.

Facebook Stili Yapmak İstiyorum

  1. İndirdiğiniz Paketteki Facebook teması klasörünün içinde bulunan public_html klasöründeki dosyaları ftp de ana dizininize gönderin ve varsayılanla değiştirilsimi diye cevap alacaksınız evet deyin ve siteniz artık facebook

Modül Kurulumu

  1. Paketin içerisinde çeşitli modüller bulunmaktadır kolaylık olsun diye bazılarını türkçe adlandırdım
  2. sitenizde hangi özelliklerin olmasını istiyorsanız o modülü kurabilirsiniz
  3. ziplerin içerisinde bulunan “files” klasörünün içerisindeki dosyaları ana dizininize upload ediniz admin panelinden eklentiler bölümünden modül kurulumu yapabilirsiniz
  4. Not Modül Kurulumu Bittikten Sonra ftp de admin klasöründeki modül ininstall dosyasını siliniz.
6 Nisan 2011 | Etiketler: , , , , , , ,

Asp.Net ile sitenizi kodluyorsunuz ve mail atmanız gerekiyor Asp.Net ile mail atmak bu kadar kolay

önce SMTP client imizi oluşturalım

SmtpClient kaynak = new SmtpClient(mailsunucusu);  // Mail gonderen sunucunun smtpsi mail sunucusu mail.feyzullahbigali.com gibi

//Burda bir kimlik oluşturuyoruz bunun sebebi sunucunun mail gönderim isteteğinin bizden geldiğini anlaması
kaynak.Credentials = new NetworkCredential(sunucudaki mail adresiniz, Şifreniz);

//Kimlikte oluştuğuna göre artık mailAdress leri verelim

//İlk önce gönderen yani bizim bilgilerimiz; yukardaki ile karıştırmayın ,yukardaki sunucunun bizi tanıması için bu gönderen bilgilerinde gözükecek olan kısım

MailAddress gonderen = new MailAddress(Mail Adresinizl, "Mailin Başlığı");  //Gönderen kişinin eposta ve Görünen isim bilgisi.

//Sırada Maili kime atıyorsak onun bilgilerini girmek var bunu ister manual elle ister veri tabanında kayıtlı olan adreslerle yapabilirsiniz
MailAddress giden = new MailAddress(Gidecek kişinin mailil, "Adı");

//mesajımızı oluşturabiliriz gönderen ve giden

MailMessage mesaj = new MailMessage(gonderen, giden);

mesaj.Subject = "Online Randevu Rezervasyon Bilgileriniz";   //mesajın başlıgı
mesaj.IsBodyHtml = true;
mesaj.Body = @"
<div><img alt="ben burda resim kullanmıştım" />
<span>Rezervasyon işleminiz " + Feyzullah + " " + Bigali + " adına alınmıştır.

Lütfen Rezervasyon saatinden 30 dakika önce rezervasyon yerinde olunuz.

</span></div>
";  //mesajın konusu
try
{
kaynak.Send(mesaj);   //ve mesajı yolladık.
}
catch (Exception)
{

throw;
}

 

Buna extra olarak şöyle düşünelim,bir mail listemiz var ( site üzerinden aldığımız mailler yada üyelerin mailleri) bunu veritabanından çekip
bir dögüde sadece -gönderilecek mail adresi- kısmına aldığınız mail adresini verin.Olur size toplu mail veyahut RSS listenize kayıt olanlara
her makale yazdığınızda tetiklenecek bir method
Herkeze iyi çalışmalar…

6 Nisan 2011 | Etiketler:

Eski bloğu takip edenler anımsayacaklardır. Kapanmıştı ve ben yazılarımın hiçbirini kurtaramamıştım. Blog v4 te de aynı durumu tekrar yaşamaktayım ama neyseki google ve onun webcache’i var. Kurtarabildiklerimi tekrar yayınlayacağım

6 Nisan 2011 | Etiketler:

Herkese merhaba,

Bir hayli zaman oldu blog kapandı açıldı, tekrar kapandı şimdi tekrar açıldı. Bu gereksiz açılış ve kapanışlardan sonra bende umuyorum ki dahada kapanmaz. Herşey bir yana yine paylaşımlar ve programlama ilgili bir blog olacağını belirtmeliyim.Dahada uzatmadan Tekrar ve Tekrar Merhaba Dünya…