Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi faAnyFile - faDirectory findet keine Dateien mit Attr. e,c (https://www.delphipraxis.net/126909-faanyfile-fadirectory-findet-keine-dateien-mit-attr-e-c.html)

PeterPanino 4. Jan 2009 20:04


faAnyFile - faDirectory findet keine Dateien mit Attr. e,c
 
Hallo, kennt sich jemand gut mit Dateiattributen aus, oder speziell mit der Funktion AdvBuildFileList aus der JCL?
Die folgende Funktion findet zwar brav alle Dateien (auch mit verschiedenen Attributen), aber keine komprimierten und keine verschlüsselten Dateien (OS = Vista)! (Komprimiert und verschlüsselt bedeutet natürlich mit dem Eigenschaftsdialog komprimiert und verschlüsselt).

Delphi-Quellcode:
if AdvBuildFileList(MyPath + '*',
                    faAnyFile - faDirectory, // nur Dateien suchen, keine Ordner
                    FileList,
                    amSuperSetOf,
                    [flRecursive]) then

Christian Seehase 4. Jan 2009 20:22

Re: faAnyFile - faDirectory findet keine Dateien mit Attr. e
 
Moin Peter,

probier' mal ob es so besser geht:

Delphi-Quellcode:
faAnyFile and not faDirectory, // nur Dateien suchen, keine Ordner
Arithmetische Operatoren sollte man bei Bitfeldern/Flags, und um diese handelt es sich bei den Attributen, niemals verwenden, sondern nur logische (Verknüpfen mir OR, ausmaskieren mit AND bzw. abziehen mit AND NOT).

PeterPanino 4. Jan 2009 21:01

Re: faAnyFile - faDirectory findet keine Dateien mit Attr. e
 
Zitat:

Zitat von Christian Seehase
Moin Peter,

probier' mal ob es so besser geht:

Delphi-Quellcode:
faAnyFile and not faDirectory, // nur Dateien suchen, keine Ordner
Arithmetische Operatoren sollte man bei Bitfeldern/Flags, und um diese handelt es sich bei den Attributen, niemals verwenden, sondern nur logische (Verknüpfen mir OR, ausmaskieren mit AND bzw. abziehen mit AND NOT).

Danke, Christian, für den Hinweis! Ich habe jetzt and not verwendet, aber das Problem besteht immer noch. Wie gesagt, die Attribute Hidden, ReadOnly und Archive beeinflussen das Ergebnis nicht. Nur Dateien, die verschlüsselt oder komprimiert sind, werden nicht gezählt!

Hawkeye219 4. Jan 2009 21:34

Re: faAnyFile - faDirectory findet keine Dateien mit Attr. e
 
Hallo,

in der Konstanten faAnyFile sind wohl die erweiterten Attribute (compressed, encrypted,...) nicht enthalten.

Hier zwei Seiten zum Studieren: Link 1 Link 2

Gruß Hawkeye

jfheins 4. Jan 2009 21:47

Re: faAnyFile - faDirectory findet keine Dateien mit Attr. e
 
Wenn die Flags die gleichen sind wie die, die die Windows-Funktion braucht, dann kannste es mal mit diesen Werten versuchen ;)

Also sowas wie
Delphi-Quellcode:
const
faNewAnyFile = faAnyFile or $800 or $4000; // Kompr. & Verschl. Dateien einbeziehen

PeterPanino 4. Jan 2009 22:30

Re: faAnyFile - faDirectory findet keine Dateien mit Attr. e
 
Zitat:

Zitat von jfheins
Wenn die Flags die gleichen sind wie die, die die Windows-Funktion braucht, dann kannste es mal mit diesen Werten versuchen ;)

Also sowas wie
Delphi-Quellcode:
const
faNewAnyFile = faAnyFile or $800 or $4000; // Kompr. & Verschl. Dateien einbeziehen

jfheins, danke, damit werden jetzt auch die verschlüsselten und komprimierten Dateien gefunden!

Wieso hat CodeGear (diese Konstanten sind ja in SysUtils definiert) diese Konstanten noch nicht angepasst?

jfheins 4. Jan 2009 22:38

Re: faAnyFile - faDirectory findet keine Dateien mit Attr. e
 
Zitat:

Zitat von PeterPanino
Wieso hat CodeGear (diese Konstanten sind ja in SysUtils definiert) diese Konstanten noch nicht angepasst?

Gute Frage :mrgreen:

Vielleicht zählt man bei denen komprimierte Dateien nicht zu "Any File" sondern zu "Not a file but some stuff we don't want" :stupid:

Kannst ja mal nen QC-Report erstellen ;)

PeterPanino 4. Jan 2009 23:13

Re: faAnyFile - faDirectory findet keine Dateien mit Attr. e
 
Zitat:

Zitat von Hawkeye219
Hier zwei Seiten zum Studieren: Link 1 Link 2

Gruß Hawkeye

Die Beiträge dort sind ja jetzt aber schon fünf- bis sechstausend Jahre alt ... (also sowas wie Höhlenmalereien) ...

taaktaak 4. Jan 2009 23:18

Re: faAnyFile - faDirectory findet keine Dateien mit Attr. e
 
Nearly, but nevertheless the missing attributes are listed
Zitat:

FILE_ATTRIBUTE_COMPRESSED = $00000800;
FILE_ATTRIBUTE_OFFLINE = $00001000;
FILE_ATTRIBUTE_NOT_CONTENT_INDEXED = $00002000;
FILE_ATTRIBUTE_ENCRYPTED = $00004000;

PeterPanino 5. Jan 2009 10:55

Re: faAnyFile - faDirectory findet keine Dateien mit Attr. e
 
Jetzt wird es völlig rätselhaft!!! Unabhängig von Dateiattributen, Dateiendungen, Dateigröße, Dateityp usw. (ich habe das sehr ausführlich getestet!) werden manche Dateien gefunden und manche nicht!! Also in irgendetwas müssen sich die Dateien noch unterscheiden! Gibt es noch ein unbekanntes Dateiattribut?


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:50 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz