Archiv-Attribut von Dateien löschen

28/06/2008 - 18:40 von Peter KUTTNIG | Report spam
Hallo NG!

Ich verwende WinXP home + SP2 mit FAT32
und möchte per VBS-Script das Archiv-Attribut von Dateien löschen.

Bisher war ich der Meinung, dass zum Löschen des Archiv-Bits
die Kombination AND NOT 32 genügt.

Bit7 6 5 4 3 2 1 Bit0
Arch Dir Vol Sys Hid Read
128 064 032 016 008 004 002 001
0 0 1 0 0 1 1 1 = 39 dez, Wert laut iFile.Attributes
1 1 0 1 1 1 1 1 "3 dez = NOT 32 = Bitmaske des Archiv-Bits
0 0 0 0 0 1 1 1 = 7 dez = Ergebnis von AND NOT 32
Bit5 ist gelöscht, die anderen Bit-Werte bleiben unveràndert.

Nun fand ich dazu das folgende Codeschnipsel:
iFile.Attributes = iFile.Attributes AND NOT 32 AND NOT (8+16+64+128)


Was bewirkt das zweite "AND NOT 216" in der Bitfolge?
Wer ist so nett und gibt mir Nachhilfe.

Vielen Dank und beste Grüße

Peter
 

Lesen sie die antworten

#1 Uwe Homm
30/06/2008 - 17:14 | Warnen spam
Hallo Peter
Arch Dir Vol Sys Hid Read
128 064 032 016 008 004 002 001

Nun fand ich dazu das folgende Codeschnipsel:
iFile.Attributes = iFile.Attributes AND NOT 32 AND NOT (8+16+64+128)


Was bewirkt das zweite "AND NOT 216" in der Bitfolge?
Wer ist so nett und gibt mir Nachhilfe.



Die Bits 7 und 6 im Attributbyte sind bei FAT unused --> Wert=0

Bit 4 (Dir) gibt an, ob es sich bei dem Verzeichniseitrag um eben ein
Verzeichnis handelt (Wert=1) oder um eine Datei (Wert=0)

Bit 3 (Vol) gibt an, ob es sich bei dem Verzeichniseitrag um das Label
(Datentràgerbezeichnung) handelt (Wert=1) oder um eine Datei (Wert=0)
bzw. einen Ordner.

Somit wird sicher gestellt, dass der Verzeichniseintrag für eine Datei
steht (kein Ordner, kein Label) und die Unused Bits den Wert 0 haben.


\\|//
(@ @)
-oOO(_)--OOo
Mit freundlichen Grüssen

Uwe Homm


http://maps.google.com/maps?f=q&...3%A4rtchen

Wissenschaft ist wie Sex – manchmal kommt etwas Nützliches dabei heraus,
aber das ist nicht der Grund, warum wir es betreiben.
Richard P. Feynman (11.05.1918 - 15.02.1988)

Der Vorteil der Klugheit besteht darin, daß man sich dumm stellen kann.
Das Gegenteil ist schon schwieriger.
Kurt Tucholsky (09.01.1890 - 21.12.1935)

Ähnliche fragen