Programlama yapalım ve Öğrenelim. - Delphi Eğitim157
  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

Evrak tarama

"

Evrak Tarama Bugün 13:10

Merhaba arkadaşlar, Delphi7 kullanıyorum ve projemde evrak tarama işleminden

sonra onu resim dosyası olarak veritabanına atmam gerekiyor.

Ne ki tarama işleminde hangi kontrolü kullanmam gerektiğini bilemiyorum ve

o kontrolle yapılmış birkaç kod örneği lazım.Eğer yardımcı olabilirseniz

çok sevineceğim, iyi çalışmalar.

 

canbaba

"

 

Cevap:

 

Tarama işlemini yapan delphide hazır komponent bulunmamaktadır.

 

bende var olan bir dökümanda kabaca şöyle bahsediliyor:

 

***

Kabaca:

 

"32 Bit TWAIN dll dosyaları içersinde bulunan OCX kontrolünü

(Image Scan Control) win98 ve sonraki versiyonlar için delphiye

tanıtabilirsiniz.

 

ActiveX kontrolü olarak "Kodak Image Scan Control" şeklinde dışardan kurun.

 

Bu işlemden sonra TImgScan komponenti olarak kurulmuş olacaktır,

Bu nesne de ActiveX paletinde yer alacaktır.

 

Bu komponentin özellikleri de aşağıdaki gibidir

...

"

 

***

 

The setup program for Imaging (tool that ships with Windows > 98) installs the Image

Scan control (OCX) and the 32-bit TWAIN DLLs.

All you have to do is to import this ActiveX control in Delphi and generate

a component wrapper:

 

Import the ActiveX Control "Kodak Image Scan Control"

(Select Component|Import ActiveX Control...)

 

Now add a TImgScan Component from the Register "ActiveX" to your form.

 

Change the following Properties in the Object Inspector:

 

FileType = 3 - BMP_Bitmap

PageOption = 4 - OverwritePages

ScanTo = 2 - FileOnly

 

 

{***}

 

Das Setup Programm für Imaging (Ist bei Windows > 98 dabei)

installiert das Bild Scanning Control (OCX) und die 32-bit TWAIN DLLs.

 

Importiere das ActiveX-Control "Steuerung für Kodak-Bildscan".

(Im Menü Komponente, "ActiveX importieren" anklicken.)

 

Dann "Steuerung für Kodak-Bildscan..." auswählen und den

"Installieren..." Button anklicken.

 

Füge nun eine "TImgScan" Komponente aus dem Register "ActiveX" auf dem

Formular ein.

 

Ändere im Objektinspektor unter "ImgScan1" folgende Eigenschaften:

 

FileType = 3 - BMP_Bitmap

PageOption = 4 - OverwritePages

ScanTo = 2 - FileOnly

 

 

{***}

 

procedure TForm1.Button1Click(Sender: TObject);

begin

  if imgScan1.ScannerAvailable then

    try

      imgScan1.Image := 'c:Scanner.bmp';

      imgScan1.OpenScanner;

      imgScan1.Zoom := 100;

      imgScan1.StartScan;

      Application.ProcessMessages;

    finally

      imgScan1.CloseScanner;

      { Show the scanned image in Image1 }

      imgScan1.Picture.LoadFromFile(Image1.Image);

    end;

end;

 

 

not: Bunu test etmedim, denemedim. Umarım işine kısmen de olsa yarar....

 

saygılarımla_

 

neoturk [ xxnt03@lycos.co.uk ]

 

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

 

neoturk: ILLEGAL - "Kaydetme hatası lütfen yardımcı olur musunuz"

"

// ARKADAŞLAR FOMMU AÇIYORUM. VE BİLGİLERİ GİRİP KAYIT YAPIYORUM

// NEDEN SE HATA VERİYOR .....

// TABLEYİ BAŞKA NASIL AÇIP NASIL KAYIT YAPTIRABİLİRİM

// YARDIMCI OLABİLİRSENİZ SEVİNİRİM..

 

procedure TForm14.BitBtn2Click(Sender: TObject);

begin

Close;      // Formu Kapat...

end;

 

procedure TForm14.FormClose(Sender: TObject; var Action: TCloseAction);

begin

Table1.close;

Form3.Enabled:=True;

Table1.open;

Table1.append;

 

end;

 

procedure TForm14.FormActivate(Sender: TObject);

begin

table1.close;

table1.open;

table1.append;

 

Dbedit2.SetFocus;

 

end;

 

procedure TForm14.BitBtn1Click(Sender: TObject);

begin

Table1.Post;

Showmessage(Label13.caption +(' "')+('Nolu Müşteri'));

Form14.Close;

 

end;

 

procedure TForm14.FormCreate(Sender: TObject);

begin

 

table1.close;

table1.open;

table1.append;

 

end;

 

procedure TForm14.FormShow(Sender: TObject);

begin

 

end;

 

procedure TForm14.DBEdit2Exit(Sender: TObject);

begin

SpeedButton1.Click;

DBEdit1.text:=Label32.Caption;

 

end;

 

end.

 

sahinmaster

"

 

cevap:

 

Öncelikle buraya soru sorulmamasını,

bilakis forum bölümüne sorulması konusunda çoğunluk olarak

karara vardık sanıyorum.

 

Çünkü,

 

HER SORUYA KARŞILIK VERİLEN CEVAPLAR NEDENİYLE,

GEREKSİZ YERE DOUBLE ŞİŞMEKTEDİR.

 

Soru sorulan kodun aynısına tekabül ( veya sorusu gösterilmeden )

neyin ne olduğu karman çorman oluyor...

 

sorunuzu lütfen FORUM bölümüne sorunuz,

 

forumları takip ediyorum, cevabınızı burada vereceğim.

 

Kurallara lütfen riayet ediniz.

 

Buraya cevabı yazılmış ( soru ile birlikte ) olan kodlar eklenecektir.

 

Tekrar ediyorum, sorularınızı lütfen forum alanına sorunuz

 

Forum Adresi:

"http://...................................../Forums.aspx?Forums=1"

 

Sorularınızı ben görüyorum ve okuyorum arkadaşlar,

Çiftift soru ve kopuk cevaplar yazmayın, Lütfen.

 

saygılarımla_

 

neoturk [ xxnt03@lycos.co.uk ]

 

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

 

neoturk: ILLEGAL - "Kaydetme hatası lütfen yardımcı olur musunuz"

"

// ARKADAŞLAR FOMMU AÇIYORUM. VE BİLGİLERİ GİRİP KAYIT YAPIYORUM

// NEDEN SE HATA VERİYOR .....

// TABLEYİ BAŞKA NASIL AÇIP NASIL KAYIT YAPTIRABİLİRİM

// YARDIMCI OLABİLİRSENİZ SEVİNİRİM..

 

procedure TForm14.BitBtn2Click(Sender: TObject);

begin

Close;      // Formu Kapat...

end;

 

procedure TForm14.FormClose(Sender: TObject; var Action: TCloseAction);

begin

Table1.close;

Form3.Enabled:=True;

Table1.open;

Table1.append;

 

end;

 

procedure TForm14.FormActivate(Sender: TObject);

begin

table1.close;

table1.open;

table1.append;

 

Dbedit2.SetFocus;

 

end;

 

procedure TForm14.BitBtn1Click(Sender: TObject);

begin

Table1.Post;

Showmessage(Label13.caption +(' "')+('Nolu Müşteri'));

Form14.Close;

 

end;

 

procedure TForm14.FormCreate(Sender: TObject);

begin

 

table1.close;

table1.open;

table1.append;

 

end;

 

procedure TForm14.FormShow(Sender: TObject);

begin

 

end;

 

procedure TForm14.DBEdit2Exit(Sender: TObject);

begin

SpeedButton1.Click;

DBEdit1.text:=Label32.Caption;

 

end;

 

end.

 

sahinmaster

"

 

cevap:

 

Öncelikle buraya soru sorulmamasını,

bilakis forum bölümüne sorulması konusunda çoğunluk olarak

karara vardık sanıyorum.

 

Çünkü,

 

HER SORUYA KARŞILIK VERİLEN CEVAPLAR NEDENİYLE,

GEREKSİZ YERE DOUBLE ŞİŞMEKTEDİR.

 

Soru sorulan kodun aynısına tekabül ( veya sorusu gösterilmeden )

neyin ne olduğu karman çorman oluyor...

 

sorunuzu lütfen FORUM bölümüne sorunuz,

 

forumları takip ediyorum, cevabınızı burada vereceğim.

 

Kurallara lütfen riayet ediniz.

 

Buraya cevabı yazılmış ( soru ile birlikte ) olan kodlar eklenecektir.

 

Tekrar ediyorum, sorularınızı lütfen forum alanına sorunuz

 

Forum Adresi:

"http://...................................../Forums.aspx?Forums=1"

 

Sorularınızı ben görüyorum ve okuyorum arkadaşlar,

Çiftift soru ve kopuk cevaplar yazmayın, Lütfen.

 

saygılarımla_

 

neoturk [ xxnt03@lycos.co.uk ]

 

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

 

neoturk: Forum - "Programınızda font kullanımı hakkında"

"

font ekleme hakkında.......... 21 Kasım 2005 22:38

mrh, arkadaşlar kod bankasındaki fontu yüklemeden kullanma kodları hakkında

bilgi almak istiyordum.

 

procedure TForm1.FormCreate(Sender: TObject);

begin

AddFontResource('c:programimFUENTE.TTF');

SendMessage(HWND_BROADCAST, WM_FONTCHANGE, 0, 0);

end;

bu kodu aynı şekilde kullanıyorum, amma bir sorun var, programı ilk

çalıştırdığında x.ttf font aktif

olmuyor, kapatıp ikinci kez çalıştırdığında aktif oluyor.

bu font'u program ilk çalıştığında nasıl aktif hale getirebilirim.

herkese iyi çalışmalar........

 

fak

"

 

cevap:

 

evet, yukarıdaki kod ilk çalıştırılmasında ilgili fontu aktifleştirmez.

Çünkü HWND_BROADCAST parametresi gönderilmiştir,

bunun anlamı da şudur, "Tüm sisteme bunu bildir" ama aktifleştirmez,

 

aktif halinin görülmesi için hemen ardından tekrar programın çalıştırılması

gerekmektedir.

 

Bunu da "winexec(application.exename,1)" şeklinde programın kendisini

yeniden çalıştırılması mantığıyla düzeltebilirsin.

 

Tekrar tekrar programın kendisini çalıştırılmaması için,

buna "tekift" şeklinde bir sayaç yapısı koyabilirsin.

Böyle bir mantığı kurup programına kodlayabilirsin.

 

Amacımız programımızı 2 kere üst üste çalıştırmak,

-ilk açılışta fontun yüklenmesini sağlamak,

-fontu sisteme tanıtmak,

-programı kapatmak,

-hemen peşinden programı tekrar çalıştırmak

 

bu işlemi kodlarken sonsuz döngüye girmemesine özen gösterilmeli,

aksi takdirde program sonsuza kadar kendisini sürekli re-start olarak

çalıştırır.

 

bu yapıyı engellemek için de "ini" dosya yapısı kullanabilirsin.

 

( bakınız: ini dosyası kullanımı ve parametrelerin saklanması ilgili kodlar )

 

ini dosyasının mantığı da şu şekilde olmalıdır,

 

-ini dosyasındaki "font_installed" parametresini oku,

-eğer false ise değerini true olarak değiştir ve ini dosyasına yaz,

 winexec ile kendini bi daha çalıştır

-eğer parametre true ise değerini false olarak değiştir ve ini dosyasına yaz,

  kendini bi daha çalıştırMA. ( font kurulu vaziyette olduğu için )

 

bu yöntemle çift tıklanan bir programını 2 kere gerekli olan yerlerde

form create aşamasında RUN ettirebilirsin. ve kullanıcının da ruhu duymaz.

 

sorununu bu şekilde giderebileceğini düşünüyorum, ben bu yöntemi seçerdim..

 

saygılarımla_

 

neoturk [ xxnt03@lycos.co.uk ]

 

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

 

neoturk: Forum - "Programınızda font kullanımı hakkında"

"

font ekleme hakkında.......... 21 Kasım 2005 22:38

mrh, arkadaşlar kod bankasındaki fontu yüklemeden kullanma kodları hakkında

bilgi almak istiyordum.

 

procedure TForm1.FormCreate(Sender: TObject);

begin

AddFontResource('c:programimFUENTE.TTF');

SendMessage(HWND_BROADCAST, WM_FONTCHANGE, 0, 0);

end;

bu kodu aynı şekilde kullanıyorum, amma bir sorun var, programı ilk

çalıştırdığında x.ttf font aktif

olmuyor, kapatıp ikinci kez çalıştırdığında aktif oluyor.

bu font'u program ilk çalıştığında nasıl aktif hale getirebilirim.

herkese iyi çalışmalar........

 

fak

"

 

cevap:

 

evet, yukarıdaki kod ilk çalıştırılmasında ilgili fontu aktifleştirmez.

Çünkü HWND_BROADCAST parametresi gönderilmiştir,

bunun anlamı da şudur, "Tüm sisteme bunu bildir" ama aktifleştirmez,

 

aktif halinin görülmesi için hemen ardından tekrar programın çalıştırılması

gerekmektedir.

 

Bunu da "winexec(application.exename,1)" şeklinde programın kendisini

yeniden çalıştırılması mantığıyla düzeltebilirsin.

 

Tekrar tekrar programın kendisini çalıştırılmaması için,

buna "tekift" şeklinde bir sayaç yapısı koyabilirsin.

Böyle bir mantığı kurup programına kodlayabilirsin.

 

Amacımız programımızı 2 kere üst üste çalıştırmak,

-ilk açılışta fontun yüklenmesini sağlamak,

-fontu sisteme tanıtmak,

-programı kapatmak,

-hemen peşinden programı tekrar çalıştırmak

 

bu işlemi kodlarken sonsuz döngüye girmemesine özen gösterilmeli,

aksi takdirde program sonsuza kadar kendisini sürekli re-start olarak

çalıştırır.

 

bu yapıyı engellemek için de "ini" dosya yapısı kullanabilirsin.

 

( bakınız: ini dosyası kullanımı ve parametrelerin saklanması ilgili kodlar )

 

ini dosyasının mantığı da şu şekilde olmalıdır,

 

-ini dosyasındaki "font_installed" parametresini oku,

-eğer false ise değerini true olarak değiştir ve ini dosyasına yaz,

 winexec ile kendini bi daha çalıştır

-eğer parametre true ise değerini false olarak değiştir ve ini dosyasına yaz,

  kendini bi daha çalıştırMA. ( font kurulu vaziyette olduğu için )

 

bu yöntemle çift tıklanan bir programını 2 kere gerekli olan yerlerde

form create aşamasında RUN ettirebilirsin. ve kullanıcının da ruhu duymaz.

 

sorununu bu şekilde giderebileceğini düşünüyorum, ben bu yöntemi seçerdim..

 

saygılarımla_

 

neoturk [ xxnt03@lycos.co.uk ]

 

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

 

neoturk: Forum - "Dosya adının içinde kabul görmeyen karakterlerin olup olmadığını denetlemek"

"

* . , / - + GİBİ İŞARETLER Bugün 10:04

herkese selam öncelikle benim sorum kullanıcının girdiği veriye göre dosya ve

klasör açtırıyorum ama bilindiği gibi windows dosya adında bulunan

nokta virgül v.b. gibi karakterler olunca açmıyor dosyayıo şimdi bana gerekli

olan windowsun dosya adında kabul etmediği karakterlerin ascII kodaları

bu konuda yardımcı olursanız sevinirim herkese iyi günler...

 

LeWo

"

 

cevab:

 

 

merhaba, çözüm olarak teorik şu kodu yazıyorum, test etmedim.

 

function gecerlimi(dosyaadi:string):boolean;

const istenmeyenkarakterler='+%&!^&/'+#39; //tirnak dahil

var m:integer;c:char;sonuc:boolean;

begin

sonuc:=true;

for m:=1 to length(dosyaadi) do

    begin

    c:=dosyaadi[m];

    if pos(c,istenmeyenkarakterler)>0 then

       begin

       sonuc:=false;

       break;

       end;

    end;

result:=sonuc;

end;

 

kullanimi:

 

if gecerlimi('c:windowsdeneme&%23.txt') then

   showmessage('Geçerli dosya adı') else showmessage('Geçersiz dosya adı');

//geçersiz dosya adı olarak görür

  

 

if gecerlimi('c:windowsdeneme555.txt') then

   showmessage('Geçerli dosya adı') else showmessage('Geçersiz dosya adı');

//geçerli dosya adı olarak görür

 

yukarıdaki kod "in" declarasyonu ile daha kısa şekilde yazılabilir.

o da çözümün ikinci varyantı...

 

ok.

 

saygılarımla_

 

neoturk [ xxnt03@lycos.co.uk ]

 

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

 

neoturk: Forum - "Dosya adının içinde kabul görmeyen karakterlerin olup olmadığını denetlemek"

"

* . , / - + GİBİ İŞARETLER Bugün 10:04

herkese selam öncelikle benim sorum kullanıcının girdiği veriye göre dosya ve

klasör açtırıyorum ama bilindiği gibi windows dosya adında bulunan

nokta virgül v.b. gibi karakterler olunca açmıyor dosyayıo şimdi bana gerekli

olan windowsun dosya adında kabul etmediği karakterlerin ascII kodaları

bu konuda yardımcı olursanız sevinirim herkese iyi günler...

 

LeWo

"

 

cevab:

 

 

merhaba, çözüm olarak teorik şu kodu yazıyorum, test etmedim.

 

function gecerlimi(dosyaadi:string):boolean;

const istenmeyenkarakterler='+%&!^&/'+#39; //tirnak dahil

var m:integer;c:char;sonuc:boolean;

begin

sonuc:=true;

for m:=1 to length(dosyaadi) do

    begin

    c:=dosyaadi[m];

    if pos(c,istenmeyenkarakterler)>0 then

       begin

       sonuc:=false;

       break;

       end;

    end;

result:=sonuc;

end;

 

kullanimi:

 

if gecerlimi('c:windowsdeneme&%23.txt') then

   showmessage('Geçerli dosya adı') else showmessage('Geçersiz dosya adı');

//geçersiz dosya adı olarak görür

  

 

if gecerlimi('c:windowsdeneme555.txt') then

   showmessage('Geçerli dosya adı') else showmessage('Geçersiz dosya adı');

//geçerli dosya adı olarak görür

 

yukarıdaki kod "in" declarasyonu ile daha kısa şekilde yazılabilir.

o da çözümün ikinci varyantı...

 

ok.

 

saygılarımla_

 

neoturk [ xxnt03@lycos.co.uk ]

 

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

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