usb kısayol lnk uzantılı dosyaları silme foksiyonu

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
barisatalay
Üye
Mesajlar: 398
Kayıt: 02 Nis 2013 05:43
İletişim:

Re: usb kısayol lnk uzantılı dosyaları silme foksiyonu

Mesaj gönderen barisatalay »

GetFiles türü bir fonksiyon olması lazım büyük ihtimal onunla klasörün içerisindekilerin listesini alın uzantısı ".lnk" olanların yolunu böyle alabilirsiniz sanırım denemedim gerçi
Kullanıcı avatarı
barisatalay
Üye
Mesajlar: 398
Kayıt: 02 Nis 2013 05:43
İletişim:

Re: usb kısayol lnk uzantılı dosyaları silme foksiyonu

Mesaj gönderen barisatalay »

Kod: Tümünü seç

var
  FileList: TStringDynArray;
  s,q: string;
begin
  FileList := TDirectory.GetFiles('c:\');

  for s in FileList do
    q := q + s + ' , ';

  ShowMessage(q);
Kullanıcı avatarı
barisatalay
Üye
Mesajlar: 398
Kayıt: 02 Nis 2013 05:43
İletişim:

Re: usb kısayol lnk uzantılı dosyaları silme foksiyonu

Mesaj gönderen barisatalay »

Şeklinde klasörler hariç listeler size düşen uzantılarını ayırt etmektir fakat kısayolları listeliyormu bilmiyorum tam olarak aklımdan yazdım kodu
barisatalay yazdı:

Kod: Tümünü seç

var
  FileList: TStringDynArray;
  s,q: string;
begin
  FileList := TDirectory.GetFiles('c:\');

  for s in FileList do
    q := q + s + ' , ';

  ShowMessage(q);
PROGRAMADOR
Üye
Mesajlar: 239
Kayıt: 04 Oca 2008 01:53
Konum: Karşıyaka/İzmir

Re: usb kısayol lnk uzantılı dosyaları silme foksiyonu

Mesaj gönderen PROGRAMADOR »

Tüm dizinler içindeki dosyaların listesini Tstrings'e ekle. Daha sonra son 3 karakteri kontrol et. Son 3 karakteri "lnk" olanları sil.

Son 3 karakteri de copy(str,length(str)-3,length(str)) şeklinde alabilirsin.

Bir başka deyişle:

Kod: Tümünü seç

var
AList: TStrings
str:string;
i:integer;
.....
for i := 0 to AList.Count - 1 do begin
 str:=AList.strings[i];
 if copy(str,length(str)-3,length(str))='lnk' then begin
     ShowMessage('Lnk dosyası bulundu');
 end;
end;
Aklıma gelen bu. Belki daha kolay ve kullanışlı bir yolu vardır.
In dubio pro reo...
Şüpheden sanık/özgürlük yararlanır...
PROGRAMADOR
Üye
Mesajlar: 239
Kayıt: 04 Oca 2008 01:53
Konum: Karşıyaka/İzmir

Re: usb kısayol lnk uzantılı dosyaları silme foksiyonu

Mesaj gönderen PROGRAMADOR »

str:string;

olarak var bloğuna yazdın mı?
In dubio pro reo...
Şüpheden sanık/özgürlük yararlanır...
PROGRAMADOR
Üye
Mesajlar: 239
Kayıt: 04 Oca 2008 01:53
Konum: Karşıyaka/İzmir

Re: usb kısayol lnk uzantılı dosyaları silme foksiyonu

Mesaj gönderen PROGRAMADOR »

Pascal dilini öğrenmeye ihtiyacınız var.

Alist'in ne olduğu zaten verdiğiniz fonksiyonda yazıyor:

function TForm1.ScaninfFile (AList: TStrings): boolean;
In dubio pro reo...
Şüpheden sanık/özgürlük yararlanır...
Kullanıcı avatarı
SimaWB
Üye
Mesajlar: 1316
Kayıt: 07 May 2009 10:42
Konum: İstanbul
İletişim:

Re: usb kısayol lnk uzantılı dosyaları silme foksiyonu

Mesaj gönderen SimaWB »

PROGRAMADOR yazdı:Pascal dilini öğrenmeye ihtiyacınız var.

Alist'in ne olduğu zaten verdiğiniz fonksiyonda yazıyor:

function TForm1.ScaninfFile (AList: TStrings): boolean;
+1
There's no place like 127.0.0.1
Kullanıcı avatarı
SimaWB
Üye
Mesajlar: 1316
Kayıt: 07 May 2009 10:42
Konum: İstanbul
İletişim:

Re: usb kısayol lnk uzantılı dosyaları silme foksiyonu

Mesaj gönderen SimaWB »

kaysenm yazdı:dostum ben biliyorum sorun yok ama verdigin kod çalışmıyor.Lütfen bir bakarmısın teşekkürler.

Kod: Tümünü seç

function TForm1.ScanInfFile (AList: TStrings): boolean;
var
  i: integer;
  str: string;
begin
  if CheckBox2.Checked then
  begin
    for i := 0 to AList.Count - 1 do begin
     str:=AList.strings[i];
      if copy(str,length(str)-3,length(str))='lnk' then begin
        sTimer.Enabled := False;
        ShowMessage('Lnk dosyası bulundu');
        end else begin
      end;
    end;
  end;
end;
Yazdığınız bu koda rağmen "AList nedir" diye sorduğunuza göre PROGRAMADOR'un dediği gibi öncelikle çözülmesi gereken başka sorunlar var!
There's no place like 127.0.0.1
Kullanıcı avatarı
G.Arkas
Üye
Mesajlar: 829
Kayıt: 01 Eki 2007 07:16
Konum: İstanbul
İletişim:

Re: usb kısayol lnk uzantılı dosyaları silme foksiyonu

Mesaj gönderen G.Arkas »

Burada ana dizin ve alt klasörler de dosya arama işlemi için detaylı bir örnek var. Arkadaşların paylaştığı örnekler zaten sana yol göstermek amacıyla verilmiş. Birebir iş görmesini bekleme. Geliştirmek sana kalmış.

http://delphi.about.com/od/vclusing/a/findfile.htm
Resim
PROGRAMADOR
Üye
Mesajlar: 239
Kayıt: 04 Oca 2008 01:53
Konum: Karşıyaka/İzmir

Re: usb kısayol lnk uzantılı dosyaları silme foksiyonu

Mesaj gönderen PROGRAMADOR »

Hazır kod beklemek yerine biraz yazılan kodları anlama gayretinde olursanız daha iyi çözümler üretebilirsiniz.

Sorununuzun çözümü için ben gerekli yolu gösterdim, kod parçacığı yazdım. Ama siz kendi yazdığınız koddaki değişkeni soruyorsunuz.
In dubio pro reo...
Şüpheden sanık/özgürlük yararlanır...
Cevapla