![]() |
Komplette Partition C:
Hallo
Wenn ich in den Filter des open dialogs den Filter für ".wav;.wma;" gemacht habe durchsucht es dann die ganze Partition C ???? Ich habe bei open nur dateien aus der Partition C stehen. Habe also alles schon gemacht will nur wissen ob es die ganze Partition C durchsucht auch in den Ordner. Hoffentlich habt ihrs kapiert wie ich das meine :gruebel: |
Re: Komplette Partition C:
Moin I.A.,
der Filter bezieht sich immer auf das Verzeichnis, auf den der Dialog gerade verweist. |
Re: Komplette Partition C:
Also dursucht er die ganze Partition ???
|
Re: Komplette Partition C:
Moin I.A.
nein, wie kommst Du da drauf? :gruebel: |
Re: Komplette Partition C:
Weil ich es will das er die ganze Partition nach dieser Dateiendung absucht. :wall:
|
Re: Komplette Partition C:
Also ich hatte auch das Problem das er immer nur die Dateien fand die direkt in C:\ gespeichert waren also hab ich mal geguckt und diese Procedure gefunden klappt bestens, um dir alle Dateien in einem Verzeichnis anzeigen zu lassen, auch die in den Unterordnern:
Delphi-Quellcode:
Viel Spaß damit und Grüße aus Niederelsungen!
public
procedure GetFiles(const Path: string); { Public-Deklarationen } procedure TForm1.GetFiles(const Path: string); var SearchRec: TSearchRec; p: string; begin Label1.Caption:=''; p := path + '*.*'; if FindFirst(p, faAnyFile, SearchRec) = 0 then begin repeat if (SearchRec.Attr and faDirectory) = faDirectory then begin if (SearchRec.Name <> '.') and (SearchRec.Name <> '..') then GetFiles(Path + SearchRec.Name + '\'); end else begin Form1.Memo1.Lines.Add(Path + SearchRec.Name); a:=a+1; Refresh; Application.ProcessMessages; ProgressBar1.StepIt; end; until FindNext(SearchRec) <> 0; FindClose(SearchRec); end; ProgressBar1.Position:=0; Label1.Caption:=IntToStr(a) +' Dateien gescannt'; end; |
Re: Komplette Partition C:
Ja könnte gehen aber bei mir funktioniert des mit dem net(besser gesagt ich blicks net weil ich anfänger bin):
Delphi-Quellcode:
da brauch ich doch so ein GetFile oder ??
procedure TForm1.GetFiles(const Path: string);
wie :
Delphi-Quellcode:
da brauch ich ja den Button dazu. :gruebel:
procedure TForm1.ClickButton1();
|
Re: Komplette Partition C:
Nein also du musst einfach in den OnClick Befehl von dem Button oder den CanClose Befehl von dem OpenDialog dass hier einfügen
Delphi-Quellcode:
procedure TForm1.BitBtn1Click(Sender: TObject);
begin Form1.GetFiles('C:\'); end; |
Re: Komplette Partition C:
Aha und das:
Delphi-Quellcode:
brauche ich nicht mehr ????
public
procedure GetFiles(const Path: string); { Public-Deklarationen } procedure TForm1.GetFiles(const Path: string); var SearchRec: TSearchRec; p: string; begin Label1.Caption:=''; p := path + '*.*'; if FindFirst(p, faAnyFile, SearchRec) = 0 then begin repeat if (SearchRec.Attr and faDirectory) = faDirectory then begin if (SearchRec.Name <> '.') and (SearchRec.Name <> '..') then GetFiles(Path + SearchRec.Name + '\'); end else begin Form1.Memo1.Lines.Add(Path + SearchRec.Name); a:=a+1; Refresh; Application.ProcessMessages; ProgressBar1.StepIt; end; until FindNext(SearchRec) <> 0; FindClose(SearchRec); end; ProgressBar1.Position:=0; Label1.Caption:=IntToStr(a) +' Dateien gescannt'; end; |
Re: Komplette Partition C:
Doch du musst dass dann ungefähr so verwenden:
Delphi-Quellcode:
sogar gestestet!
unit MyPad1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons, FileCtrl, ComCtrls, ExtCtrls; type TForm1 = class(TForm) procedure ....................; procedure ....................; procedure ....................; private { Private-Deklarationen } public procedure GetFiles(const Path: string); { Public-Deklarationen } end; var Form1: TForm1; Weiter:Boolean; a:integer; implementation {$R *.dfm} procedure TForm1.BitBtn2Click(Sender: TObject); begin a:=0; Memo1.Clear; Form1.GetFiles('C:\'); end; procedure TForm1.GetFiles(const Path: string); var SearchRec: TSearchRec; p: string; begin Label1.Caption:=''; p := path + '*.*'; if FindFirst(p, faAnyFile, SearchRec) = 0 then begin repeat if (SearchRec.Attr and faDirectory) = faDirectory then begin if (SearchRec.Name <> '.') and (SearchRec.Name <> '..') then GetFiles(Path + SearchRec.Name + '\'); end else begin Form1.Memo1.Lines.Add(Path + SearchRec.Name); a:=a+1; Refresh; Application.ProcessMessages; ProgressBar1.StepIt; end; until FindNext(SearchRec) <> 0; FindClose(SearchRec); end; ProgressBar1.Position:=0; Label1.Caption:=IntToStr(a) +' Dateien gescannt'; end; end. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:15 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz