FileAttributes sconosciuti
-
21-09-2019 - |
Domanda
Ho cercato di eseguire il codice seguente:
var top = new DirectoryInfo("C:\\");
foreach(var info in top.GetFileSystemInfos())
System.Console.WriteLine("{0}: {1}", info.Name, info.Attributes);
ho ottenuto il seguente risultato:
$ Recycle.Bin: Nascosto, Sistema, Elenco
ATI: Elenco
Documents and Settings: nascosto, di sistema, directory, ReparsePoint , NotContentIndexed
MSOCache: ReadOnly, Hidden, Directory, NotContentIndexed
PerfLogs: Elenco
Programmi: ReadOnly, Elenco
Programmi (x86): 65553
ProgramData: 73.746
Recupero: Nascosto, Sistema, Directory, NotContentIndexed
System Volume Information: Nascosto, Sistema, Elenco
Utenti: ReadOnly, Elenco
Windows: 65552
hiberfil.sys: Hidden, sistema, archivio, NotContentIndexed
pagefile.sys: nascosto, sistema Archivio
La maggior parte di questi sono abbastanza evidente. Ma che cosa fa quella contrassegnata in grassetto significa? Soprattutto quelli numerici per Programmi e Windows.
Soluzione
Gli attributi di FileSystemInfo sono presi da FileAttributes
, che è un'enumerazione.
-
I numeri corrispondono alla somma della somma dei vari bit insieme.
-
ReparsePoint significa che c'è un punto di analisi in questa directory, che provoca NTFS per guardare alcuni dati particolari che è stato memorizzato insieme con la directory. Si può leggere di più su come funzionano qui .
-
NotContentIndexed significa che se c'è un servizio di indicizzazione di contenuto in esecuzione, non guardare a questo elenco.
Altri suggerimenti
Credo che, questa è una somma di attributi da questa lista
Ad esempio,
65552 = 65536 (FILE_ATTRIBUTE_VIRTUAL) + 16 (FILE_ATTRIBUTE_DIRECTORY)
e così via.