Programlama yapalım ve Öğrenelim. - Delphi Eğitim217
  Ana Sayfa
  .NET Eğitim Notları
  Visual C# .NET Örnek Kodları
  VisualBasic.NET Örnek Kodları
  J# Örnekleri
  ASP.NET Örnek Kodları
  Delphi Eğitim
  => Delphi Eğitim1
  => Delphi Eğitim2
  => Delphi Eğitim3
  => Delphi Eğitim4
  => Delphi Eğitim5
  => Delphi Eğitim6
  => Delphi Eğitim7
  => Delphi Eğitim8
  => Delphi Eğitim9
  => Delphi Eğitim10
  => Delphi Eğitim11
  => Delphi Eğitim13
  => Delphi Eğitim14
  => Delphi Eğitim15
  => Delphi Eğitim16
  => Delphi Eğitim17
  => Delphi Eğitim18
  => Delphi Eğitim19
  => Delphi Eğitim20
  => Delphi Eğitim21
  => Delphi Eğitim22
  => Delphi Eğitim23
  => Delphi Eğitim24
  => Delphi Eğitim25
  => Delphi Eğitim26
  => Delphi Eğitim27
  => Delphi Eğitim28
  => Delphi Eğitim29
  => Delphi Eğitim30
  => Delphi Eğtim31
  => Delphi Eğitim32
  => Delphi Eğitim33
  => Delphi Eğitim34
  => Delphi Eğitim35
  => Delphi Eğitim36
  => Delphi Eğitim37
  => Delphi Eğitim38
  => Delphi Eğitim39
  => Delphi Eğitim40
  => Delphi Eğitim41
  => Delphi Eğitim42
  => Delphi Eğitim43
  => Delphi Eğitim44
  => Delphi Eğitim45
  => Delphi Eğitim46
  => Delphi Eğitim47
  => Delphi Eğitim48
  => Delphi Eğitim49
  => Delphi Eğitim50
  => Delphi Eğitim51
  => Delphi Eğitim52
  => Delphi Eğitim53
  => Delphi Eğitim54
  => Delphi Eğitim55
  => Delphi Eğitim56
  => Delphi Eğitim57
  => Delphi Eğitim58
  => Delphi Eğitim59
  => Delphi Eğitim60
  => Delphi Eğitim61
  => Delphi Eğitim62
  => Delphi Eğitim63
  => Delphi Eğitim64
  => Delphi Eğitim65
  => Delphi Eğitim66
  => Delphi Eğitim67
  => Delphi Eğitim68
  => Delphi Eğitim69
  => Delphi Eğitim70
  => Delphi Eğitim71
  => Delphi Eğitim72
  => Delphi Eğitim73
  => Delphi Eğitim74
  => Delphi Eğitim75
  => Delphi Eğitim76
  => Delphi Eğitim77
  => Delphi Eğitim78
  => Delphi Eğitim79
  => Delphi Eğitim80
  => Delphi Eğitim81
  => Delphi Eğitim82
  => Delphi Eğitim83
  => Delphi Eğitim84
  => Delphi Eğitim85
  => Delphi Eğitim86
  => Delphi Eğitim87
  => Delphi Eğitim88
  => Delphi Eğitim89
  => Delphi Eğitim90
  => Delphi Eğitim91
  => Delphi Eğitim92
  => Delphi Eğitim93
  => Delphi Eğitim94
  => Delphi Eğitim95
  => Delphi Eğitim96
  => Delphi Eğitim97
  => Delphi Eğitim98
  => Delphi Eğitim99
  => Delphi Eğitim100
  => Delphi Eğitim101
  => Delphi Eğitim102
  => Delphi Eğitim103
  => Delphi Eğitim104
  => Delphi Eğitim105
  => Delphi Eğitim106
  => Delphi Eğitim107
  => Delphi Eğitim108
  => Delphi Eğitim109
  => Delphi Eğitim110
  => Delphi Eğitim111
  => Delphi Eğitim112
  => Delphi Eğitim113
  => Delphi Eğitim114
  => Delphi Eğitim115
  => Delphi Eğitim116
  => Delphi Eğitim117
  => Delphi Eğitim118
  => Delphi Eğitim119
  => Delphi Eğitim120
  => Delphi Eğitim121
  => Delphi Eğitim122
  => Delphi Eğitim123
  => Delphi Eğitim124
  => Delphi Eğitim125
  => Delphi Eğitim126
  => Delphi Eğitim127
  => Delphi Eğitim128
  => Delphi Eğitim129
  => Delphi Eğitim130
  => Delphi Eğitim131
  => Delphi Eğitim132
  => Delphi Eğitim133
  => Delphi Eğitim134
  => Delphi Eğitim135
  => Delphi Eğitim136
  => Delphi Eğitim137
  => Delphi Eğitim138
  => Delphi Eğitim139
  => Delphi Eğitim140
  => Delphi Eğitim141
  => Delphi Eğitim142
  => Delphi Eğitim143
  => Delphi Eğitim144
  => Delphi Eğitim145
  => Delphi Eğitim146
  => Delphi eğitim147
  => Delphi Eğitim148
  => Delphi Eğitim149
  => Delphi Eğitim150
  => Delphi Eğitim151
  => Delphi Eğitim152
  => Delphi Eğitim153
  => Delphi Eğitim154
  => Delphi Eğitim155
  => Delphi Eğitim156
  => Delphi Eğitim157
  => Delphi Eğitim158
  => Delphi Eğitim159
  => Delphi Eğitim160
  => Delphi Eğitim161
  => Delphi Eğitim162
  => Delphi Eğitim164
  => Delphi Eğitim165
  => Delphi Eğitim166
  => Delphi Eğitim167
  => Delphi Eğitim168
  => Delphi Eğitim169
  => Delphi Eğitim170
  => Delphi Eğitim171
  => Delphi Eğitim172
  => Delphi Eğitim173
  => Delphi Eğitim174
  => Delphi Eğitim175
  => Delphi Eğitim176
  => Delphi Eğitim177
  => Delphi Eğitim178
  => Delphi Eğitim179
  => Delphi Eğitim180
  => Delphi Eğitim181
  => Delphi Eğitim182
  => Delphi Eğitim183
  => Delphi Eğitim184
  => Delphi Eğitim185
  => Delphi Eğitim186
  => Delphi Eğitim187
  => Delphi Eğitim188
  => Delphi Eğitim189
  => Delphi Eğitim190
  => Delphi Eğitim191
  => Delphi Eğitim192
  => Delphi Eğitim193
  => Delphi Eğitim194
  => Delphi Eğitim195
  => Delphi Eğitim196
  => Delphi Eğitim197
  => Delphi Eğitim198
  => Delphi Eğitim199
  => Delphi Eğitim200
  => Delphi Eğitim201
  => Delphi Eğitim202
  => Delphi Eğitim203
  => Delphi Eğitim204
  => Delphi Eğitim205
  => Delphi Eğitim206
  => Delphi Eğitim207
  => Delphi Eğitim208
  => Delphi Eğitim209
  => Delphi Eğitim210
  => Delphi Eğitim211
  => Delphi Eğitim212
  => Delphi Eğitim213
  => Delphi Eğitim214
  => Delphi Eğitim215
  => Delphi Eğitim216
  => Delphi Eğitim217
  => Delphi Eğitim218
  => Delphi Eğitim219
  => Delphi Eğitim220
  => Delphi Eğitim221
  => Delphi Eğitim222
  => Delphi Eğitim223
  => Delphi Eğitim224
  => Delphi Eğitim225
  => Delphi Eğitim226
  => Delphi Eğitim227
  => Delphi Eğitim228
  => Delphi Eğitim229
  => Delphi Eğitim230
  => Delphi Eğitim231
  => Delphi Eğitim232
  => Delphi Eğitim233
  => Delphi Eğitim234
  => Delphi Eğitim235
  => Delphi Eğitim236
  => Delphi Eğitim237
  => Delphi Eğitim238
  => Delphi Eğitim239
  => Delphi Eğitim240
  => Delphi Eğitim241
  => Delphi Eğitim242
  İletişim

.NET veritabanı yetkileri

//2004 yılında yaptığım telefon rehberi programını aradan geçen 1 yıl sonra

//bir türlü çalıştıramadım.

//google da biraz turladıktan sonra; şunları öğrendim ve biraz çalışır hale geldi:

1-

ASP.NET kurulduktan sonra otomatik oluşan ASPNET kullanıcısına, yetki vermemiz gereklidir.

"Başlat*Ayarlar *Denetim Masası*Yönetimsel Araçlar*Bilgisayar Yönetimi*Sistem Araçları

*Yerel Kullanıcılar ve Gruplar*Users" dan ASPNET seçilerek Üyelik kısmına Administrators,

VS Developers ve Users ekliyoruz. Aslında Administrator hakkı vermek çok tehlikelidir,

ama şimdilik öğrenmek için kendi bilgisayarımızda bu ayarı yapabiliriz.

 

2-

IIS'de webapplication klasörünüze sağ tıklayıp, Uygulama haline getirin.

 

3-

Eğer şu şekilde bir hata oluşmuş ise:

Cannot open database requested in login 'dtname'. Login fails.

Login failed for user 'EVASPNET'.

Çözüm: Komut isteminde (Başlatalıştır*cmd) şu adımları yapınız:

 

C:>osql -E

1> use master

2> exec sp_grantlogin 'EVASPNET'

3> go

Granted login access to 'EVASPNET'.

1> use dtname

2> exec sp_grantdbaccess 'EVASPNET'

3> go

Granted database access to 'EVASPNET'.

1> exec sp_addrolemember 'db_datareader','EVASPNET'

2> go

'EVASPNET' added to role 'db_datareader'.

1> quit

C:>_

           

# EV yerine kendi bilgisayar adınızı yazmayı unutmayın.   

# dtname yerine de kendi yaptığınız veritabanınız olmalı.

 

Eğer şu şekilde bir hata oluşmuş ise:(UPDATE yerine SELECT, INSERT veya DELETE de olabilir)

UPDATE permission denied on object 'Tablo1', database 'dtname', owner 'dbo'.

Çözüm: Üstteki hatadaki gibi adımları izleyerek, 'db_datareader' yerine

'db_datawriter' yapınız.

 

4-

Belki C: sürücüsüne yazma hakkı yoktur.

Yani C$ şeklinde. Sürücüye sağ tıklayıp paylaşıma açmanız gerekebilir.

Hata hala oluşuyor ise www.google.com'a hata mesajınızı yazıp çözüm arayabilirsiniz.

VB.NET 2005 veya sonraki versiyonlarda veritabanı programcılığı muhtemelen çok daha

kolaydır.

 

Delphi.NET - .....................................

 

Zeka-Yapay Zeka (Makale)

selam.

Sokaklarda avare avare gezip de "sonuçta bu yorucu gezinti bana ne ve ne kadar kazandırdı?"

diye onca düşünmeme rağmen farketmediğim, ancak az önceki yürüyüşte farkettiğim bir şeyden bahkedeceğim size.

 

Kalabalık diyebileceğim bir caddenin ortasında bir kaç saniye

duraksayıp gözümün gördüğü tüm insanlara baktım : Yürüyen herkes kollarını sallıyordu.

Yüksek ihtimalle bu insanın dengesini sağlaması için yaptığı bir eylemdi.

Bu ancak salt bilinç düzeyinde yapılan bu eylem insanın geliştirilebilinen zekasının kendi kendisini yönetmesinin bir sonucu olabilirdi. Öyle ki düşmek üzerine olan bir insanın

zekası ne seviyede olursa olsun ellerini kullanması mümkün değildi. Öyle ki çoğu insan düşme anında sadece SONUCU düşünür. Zeka bu durumda eylem yapmaktansa içinde bulunulan durumun sonucunu döndürür. Düşen insanın ellerini kullanarak hala dengesini sağlaması salt aklın kendini sürdürmesi değil midir?

 

Sinir sistemi ile davranış sergileyen canlılarda bu eylem gerçekleşmemektedir.

Örneğin bir bacağı kopan kırkayak (ki kırk tane ayağı yok:) hala yürümeye çalışacaktır.

Eğer salt aklın yürütülmesi veya tamamen bilinç düzeyinde olan bir eylem sergilenmesi gerekseydi bu kopan bacağını düşünmek veya onunla ilgili bir başka eylem olacaktı.

 

Çoğu yapay zeka programlama girişimlerim hep bu koşullu eylemler sonucu yarıda kalmıştır.

Çünkü bir bilgisayar programı asla kendini sürdüremeyecekti. Yapay zeka programladığını düşünenlerin programları da ancak programcılarının verebildiği ölçüde zekiydi.

Bir zamanlar adı memo olan bir programı denemiştim. Yapay zeka namına test ettiğim en "aptal" program oydu sanırım. Çünkü vereceğiniz cevaplarla pek ilgilenmiyordu :)

 

if strtoint(yas) < strtoint('5') then begin

memo1.lines.add('Oldukça küçüksün... vs..');

exit;

end;

if strtoint(yas) > strtoint('5') then begin

memo1.lines.add('tamam seninle konuşabiliriz.. vs..');

end;

....

 

gibi basit döngülerden oluşan programları yapay zeka olarak değerlendirmiyorum zaten.

Herşey bir tarafa gelişimi sınırlı da olsa kendini sürdürebilecek bir programın yapılabileceğine inanmak istiyorum. Çünkü eğer böyle olmayacaksa

biz kıyamate kadar dünyadan bir adım öteye gidemeyeceğiz :)

 

Kendinize iyi davranın.

Çalışmalarınızda başarılar dilerim.

 

 

 

Programa Giriş ( Kullanıcı Adı ve Şifre Girişi )

// Arkadaşlar Ben Çok Aramıştım Belki Yeni Başlayanlardan Birinin İşine Yarar.

// Kolay Gelsin Arkadaşlar Bu Kodu biraz Geliştirmek İstiyorum...

// Yardım Etmek İsterseniz Sayfanın Altında Ki Açıklamayı Okuyup Yardım Ederseniz Sevinirim.

 

procedure TForm18.BitBtn1Click(Sender: TObject);

var

I:integer;

K_ADI,K_SIFRE:string;

begin

if Edit1.Text='' then

begin

ShowMessage('Lütfen Kullanıcı Adini Giriniz');

exit;

end;

if Edit2.Text='' then

begin

ShowMessage('Lütfen Şifre Giriniz');

exit;

end

else

begin

K_SIFRE:=Edit2.Text;

K_ADI:=Edit1.Text;

 

if Table1.Locate('K_ADI;K_SIFRE',VarArrayOf([Edit1.Text,Edit2.Text]),[locaseinsensitive]) then

 

begin

  Gauge1.MaxValue := 100;

  Gauge1.Progress := 0;

  for I := 1 to 100 do

  begin

  Gauge1.Progress := Gauge1.Progress+1;

  Sleep(15);

  end;

 

Form18.Hide;

Form19.show;

Edit1.Text:='';

Edit2.Text:='';

end

else

begin

ShowMessage('Kullanıcı Adinı veya Şifresini Yanlış Girdiniz...!');

Edit1.SetFocus;

Edit1.SelectAll;

Edit1.Text:='';

Edit2.Text:='';

end;

 

 

    end;

end;

 

//

Merhaba Arkadaşlar Kulay Gelsin. Programa Girerken Şu Kodları Kullanıyorum ..

Kullanıcı Adı Ve Şifresi İçin...

 

Bu Koda Bir Şey İlave Edmek İstiyorum ...

Admin  Kullanıcı Ve Şifresi Bunu İçin Kodun Neresine Nasıl Bir Kod Ekleme Gerek

 

Derdimi Anlatabildim mi.

Yardımcı Olabilirseniz Sevinirim. Çok Önemli Arkadaşar Yardımlarınızı Bekliyorum...

 

KOLAY GELSİN.

 

Delphi - .....................................

 

Programa Giriş ( Kullanıcı Adı ve Şifre Girişi )

// Arkadaşlar Ben Çok Aramıştım Belki Yeni Başlayanlardan Birinin İşine Yarar.

// Kolay Gelsin Arkadaşlar Bu Kodu biraz Geliştirmek İstiyorum...

// Yardım Etmek İsterseniz Sayfanın Altında Ki Açıklamayı Okuyup Yardım Ederseniz Sevinirim.

 

procedure TForm18.BitBtn1Click(Sender: TObject);

var

I:integer;

K_ADI,K_SIFRE:string;

begin

if Edit1.Text='' then

begin

ShowMessage('Lütfen Kullanıcı Adini Giriniz');

exit;

end;

if Edit2.Text='' then

begin

ShowMessage('Lütfen Şifre Giriniz');

exit;

end

else

begin

K_SIFRE:=Edit2.Text;

K_ADI:=Edit1.Text;

 

if Table1.Locate('K_ADI;K_SIFRE',VarArrayOf([Edit1.Text,Edit2.Text]),[locaseinsensitive]) then

 

begin

  Gauge1.MaxValue := 100;

  Gauge1.Progress := 0;

  for I := 1 to 100 do

  begin

  Gauge1.Progress := Gauge1.Progress+1;

  Sleep(15);

  end;

 

Form18.Hide;

Form19.show;

Edit1.Text:='';

Edit2.Text:='';

end

else

begin

ShowMessage('Kullanıcı Adinı veya Şifresini Yanlış Girdiniz...!');

Edit1.SetFocus;

Edit1.SelectAll;

Edit1.Text:='';

Edit2.Text:='';

end;

 

 

    end;

end;

 

//

Merhaba Arkadaşlar Kulay Gelsin. Programa Girerken Şu Kodları Kullanıyorum ..

Kullanıcı Adı Ve Şifresi İçin...

 

Bu Koda Bir Şey İlave Edmek İstiyorum ...

Admin  Kullanıcı Ve Şifresi Bunu İçin Kodun Neresine Nasıl Bir Kod Ekleme Gerek

 

Derdimi Anlatabildim mi.

Yardımcı Olabilirseniz Sevinirim. Çok Önemli Arkadaşar Yardımlarınızı Bekliyorum...

 

KOLAY GELSİN.

 

Delphi - .....................................

 

inmem000.rem problemi çözemedim

c:.......temp  de inmem000.rem  diye bi dosya oluşturuyor session falan hepsi ayarlanmış durumda yine de olmadı

 

Delphi - .....................................

 

inmem000.rem problemi çözemedim

c:.......temp  de inmem000.rem  diye bi dosya oluşturuyor session falan hepsi ayarlanmış durumda yine de olmadı

 

Delphi - .....................................

 

Örnek Install

Arkadaşlar Örnek Install yani Kurulum programlarını kendimizde geliştirebiliriz.

 

Bu linkte yapılmış en güzel kurulum programının tanıtımıdır.

 

Kurulum programıda çok yakında hizmetinizde ......

 

http://www.inndir.com/inndir.php?id=29575 <---- Burayı Kopyala Yapıştır Yaparak Örnek Kurulum Programını ve Otomasyon Sistemini İnceleyebilirsiniz....

 

Delphi - .....................................

 

Örnek Install

Arkadaşlar Örnek Install yani Kurulum programlarını kendimizde geliştirebiliriz.

 

Bu linkte yapılmış en güzel kurulum programının tanıtımıdır.

 

Kurulum programıda çok yakında hizmetinizde ......

 

http://www.inndir.com/inndir.php?id=29575 <---- Burayı Kopyala Yapıştır Yaparak Örnek Kurulum Programını ve Otomasyon Sistemini İnceleyebilirsiniz....

 

Delphi - .....................................

 

neoturk - re:"yardım talebi ya bende yada kitapta hata var"

"

unit ogrenci;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, ComCtrls, StdCtrls;

 

type

  Tfrmogrenci = class(TForm)

    btnekle: TButton;

    btnsil: TButton;

    btncik: TButton;

    dtpkayittarihi: TDateTimePicker;

    cbobolumu: TComboBox;

    edadsoyad: TEdit;

    Label1: TLabel;

    Label2: TLabel;

    Label3: TLabel;

    lvwogrencilistesi: TListView;

    procedure FormCreate(Sender: TObject);

    procedure btnekleClick(Sender: TObject);

    procedure btnsilClick(Sender: TObject);

    procedure btncikClick(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  frmogrenci: Tfrmogrenci;

 

implementation

 

{$R *.dfm}

 

procedure Tfrmogrenci.FormCreate(Sender: TObject);

begin

cbobolumu.ItemIndex:=0;

lvwogrencilistesi.ViewStyle:=vsreport;

lvwogrencilistesi.Columns.Add;

lvwogrencilistesi.Columns.Items[0].Caption:='Adı Soyadı';

lvwogrencilistesi.Columns.Items[0].width:=100;

lvwogrencilistesi.Columns.Add;

lvwogrencilistesi.Columns.Items[1].Caption:='Bölümü';

lvwogrencilistesi.Columns.Items[1].width:=100;

lvwogrencilistesi.Columns.Add;

lvwogrencilistesi.Columns.Items[2].Caption:='Kayıt Tarihi';

lvwogrencilistesi.Columns.Items[2].width:=100;

end;

 

procedure Tfrmogrenci.btnekleClick(Sender: TObject);

const s:integer=0; <*<*<*<*<*<*<*<<*<*<*< (burda hata veriyor program)

if lvwogrencilistesi.Items.count=0 then s:0;

lvwogrencilistesi.Items.Add;

lvwogrencilistesi.Items.Item[s].Caption:=edadsoyad.Text;

lvwogrencilistesi.Items.Item[s].SubItems.Add(cbobolumu);

lvwogrencilistesi.Items.Item[s].SubItems.Add(DateToStr(dtpkayittarihi.Date));

s:=s+1;

end;

 

procedure Tfrmogrenci.btnsilClick(Sender: TObject);

begin

lvwogrencilistesi.Items.Delete(lvwogrencilistesi.ItemIndex);

end;

 

procedure Tfrmogrenci.btncikClick(Sender: TObject);

begin

close;

end;

 

end.

"

 

merhaba,

 

1)

formun create bölümündeki ayarlara pek gerek yok

elle manuel olarak listview nesnesine 3 adet kolon oluştur ve captionlarını ayarla.

burası görsellik için..

 

2)

"

const s:integer=0; <*<*<*<*<*<*<*<<*<*<*< (burda hata veriyor program)

if lvwogrencilistesi.Items.count=0 then s:0;

lvwogrencilistesi.Items.Add;

lvwogrencilistesi.Items.Item[s].Caption:=edadsoyad.Text;

lvwogrencilistesi.Items.Item[s].SubItems.Add(cbobolumu);

lvwogrencilistesi.Items.Item[s].SubItems.Add(DateToStr(dtpkayittarihi.Date));

s:=s+1;

"

 

var s:integer=0; <*<*<*<*<*<*<*<<*<*<*< (burda hata veriyor program)

if lvwogrencilistesi.Items.count=0 then s:=0;

lvwogrencilistesi.Items.Add();

lvwogrencilistesi.Items.Item[s].Caption:=edadsoyad.Text;

lvwogrencilistesi.Items.Item[s].SubItems.Add(cbobolumu);

lvwogrencilistesi.Items.Item[s].SubItems.Add(DateToStr(dtpkayittarihi.Date));

s:=s+1;

 

yukarıdaki şekilde değiştirip tekrar gözden geçir.

(const ile yapılmış sabit tanımına tekrar değer aktarılamaz, s=s+1 gibi)

add() çift parantez de ekle,

 

 

şayet yukardakilerin hiç biri olmaz ise ( ki sanmıyorum hata çıksın ),

 

şu şekilde değiştir, ( ekle butonunun cliğine yaz ),

 

var s:integer;

begin

s:=lvwogrencilistesi.items.count;

if s<0 then s:=0; //her ihtimale karşı sigorta olsun diye yazdım kasıtlı!

lvwogrencilistesi.items.add();

lvwogrencilistesi.Items.Item[s].Caption:=edadsoyad.Text;

lvwogrencilistesi.Items.Item[s].SubItems.Add(cbobolumu);

lvwogrencilistesi.Items.Item[s].SubItems.Add(DateToStr(dtpkayittarihi.Date));

end;

 

%100 olarak çalışacaktır....

 

3) silme tuşuna yazdığın kod,

lvwogrencilistesi.Items.Delete(lvwogrencilistesi.ItemIndex);

şeklinde yazmışsın, seçili bir eleman olmaz ise hata raporuyla karşılaşırsın,

bunu da şu şekilde değiştir,

 

try

lvwogrencilistesi.Items.Delete(lvwogrencilistesi.ItemIndex);

except

showmessage('silinecek elemanı seçin');

end; //try-except

 

başka bişi yok hatalı görünen,

 

 

kolay gelsin....

 

saygılarımla_

 

Bu web sitesi ücretsiz olarak Bedava-Sitem.com ile oluşturulmuştur. Siz de kendi web sitenizi kurmak ister misiniz?
Ücretsiz kaydol