![]() |
Dateiattributensalat
Hallo,
entweder verstehe ich es nicht oder Windows macht mal wieder halbe Sachen. Die Attribute für den Netzwerk-Bereich, sprich "O", "P" und "U" können zusammen gesetzt werden. O = Offline P = Angeheftet U = Losgelöst Also mit "attrib" kann man eine Datei auf PU, oder OPU setzen. Also P und U widerspricht sich doch? Es gibt ja folgende Möglichkeiten: (O) (P) (U) (OP) (OU) (OPU) (PU) (leer) Ich frage mich natürlich, welchen Zustand diese 8 Möglichkeiten bedeuten. Weiterhin ist "P" schlecht gewählt, da es auch Sparse-Dateien gibt, die mit dem "P"-Flag gekennzeichnet werden. Michael |
AW: Dateiattributensalat
Du solltest tunlichst Vermeiden solche Attribute selbst setzen zu wollen.
Ein paar Anregungen welche Attribute offiziell existieren findest Du ![]() Zitat:
![]() Es kann natürlich auch sein das Du etwas völlig anderes meinst, dann tut es mir Leid. |
AW: Dateiattributensalat
Mir geht es eher darum, zu verstehen das dies überhaupt möglich ist (das gleichzeitige setzen von P und U).
Windows muss (oder sollte) sich dabei ja etwas gedacht haben. Deshalb meine Frage dazu denn vielleicht verstehe ich es ja nicht. Wenn meine Anwendung auf Attribute reagieren (das soll sie) oder Attribute ändern soll, dann prüfe ich auch Fehlerquellen/Möglichkeiten etc. Ähnlich wie wenn man seine Anwendung auch auf verschiedene Auflösungen testet und schauen möchte ob alle Breiten/Höhen stimmen. So schaue ich nun auch auf die Attribute. Für eine Sortierung, für eine Ansicht, für eine Beschreibung und ein paar für eine Änderung. FILE_ATTRIBUTE_... kenne ich zu 99% Übrigens sind die beiden Attribute noch nicht in Delphi drin und auf der MS-Webseite noch nicht beschrieben. FILE_ATTRIBUTE_UNPINNED = $00100000; FILE_ATTRIBUTE_PINNED = $00080000; Wird wohl irgendwann kommen Michael |
AW: Dateiattributensalat
Erstmal sollte man bedenken, dass es nur begrenzte 32 Bit gibt,
dann sind einige Attribute auch nicht immer "vorhanden", bzw. nur in Verbindung mit Anderen gültig ... sie sind also frei, wenn das andere Attribut nicht gesetzt ist ... können also mehrfach verwendet werden. Dass pinned und unpinned gleichzeitig aktiv sind, könnte auch richtig sein, z.B. für den Zustand wo eine datei nicht lokal, sondern nur in der Cloud liegen (lokal ist nur die Dateiinformation ohne Inhalt) * Datei ganz normal lokal * Dateilink ins Netzwerk, aber grade offline * Datei in Cloud und mit lokaler Kopie * Datei nur in Cloud, ohne lokale Kopie Ich vermute jetzt einfach mal, dass die Clout kein Sparse unterstützt, womit dieses Attribut dort frei wäre und für was Anderes genutzt werden könnte. Na ja, da niemand ständig guckt, was sich ändert, da dauert es immer etwas, bis Neues in der Pascalübersetzung auftaucht, aber dur darfst auch gern sowas Melden nach einfügen lassen. (alternativ zu fremden Headerübersetzungen, wie z.B. von den JEDIs) C-Sprachen haben es da einfacher, da sie oftmals direkt gegen die "originalen" Windows-Header kompilieren, wärend für Delphi es immer erst übersetzte Kopieen braucht. Schade eigentlich, denn Embarcaderos C++Builder kann C++-Header UND Delphi-Units einbinden, während Delphi leider eben keine C++-Dateien direkt einbinden kann. :cry: |
AW: Dateiattributensalat
Danke für die Infos.
Im Internet sind jedenfalls einige auch etwas verwirrt, bezüglich den Attributen. (ich lese hier und da englisches und übersetzte es mir immer mit dem Google Übersetzer *g) Die Sparse-Dateien sind aber im Netzwerk möglich. Das hatte ich getestet aber mir fällt gerade ein, dass ich dies nur im Offline-Modus getestet habe. Da muss ich noch mal schauen... Aber zum Thema Netzwerk. Da bin ich noch ne Niete. Ich habe einfach mal meine Fritz.Box eingerichtet (zum testen). Da habe ich dann etwas mit "FRITZ-NAS". Ob hier das Thema mit den Attributen für alle Netzwerke gilt? Es gibt ja OneDrive und diese und jene Dienste. Diese beiden neuen Flags (Pinned/Unpinned) wurden ja wegen OneDrive hinzugefügt. Aber es sind Attribute fürs ganze System. Im Explorer werden diese in meinem FRITZ-NAS auch abgefragt/gesetzt. Also denke ich, es gilt dann bei jedem Netzwerk so. Zu den Flags wird jedenfalls oft von "+P -U" oder "-P +U" geschrieben. Auch las ich inzwischen (eine Meinung) das andere Möglichkeiten ungültig zu betrachten sind. Es gibt auch noch "FILE_ATTRIBUTE_RECALL_ON_DATA_ACCESS", was zum ganzen Thema dazugehört. Also eigentlich vier Attribute: FILE_ATTRIBUTE_PINNED FILE_ATTRIBUTE_UNPINNED FILE_ATTRIBUTE_OFFLINE FILE_ATTRIBUTE_RECALL_ON_DATA_ACCESS Damit kann man (muss man aber nicht) dann rumspielen und Attribute nach belieben setzen. Hier und da macht's dann aber wohl kein Sinn. Je nach dem wie man die Attribute für seine Anwendung nutzen möchte, muss man halt darüber etwas Infos haben. Sonst steht dann evtl. "Die Datei ist nur Online und immer lokal verfügbar" :) Michael |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:55 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-2025 by Thomas Breitkreuz