このスレッドの礼儀。
これにより、拡張属性を含むすべてのファイル属性が取得されることを確認しました。
プロジェクトで、[参照の追加] -> [COM] -> [Microsoft Shell Controls and Automation] に移動します。
ディレクトリ内のファイルの属性を読み取るための C# メソッドを追加します。(特定のファイルでこの機能を実行できるかどうかはまだ調査中です。そうでない場合は、常に問題のファイル名を渡し、そのファイルの属性のみを取得することを確認できます。)
public static void Main(string[] args)
{
List<string> arrHeaders = new List<string>();
Shell32.Shell shell = new Shell32.Shell();
Shell32.Folder objFolder;
objFolder = shell.NameSpace(@"C:\temp\testprop");
for( int i = 0; i < short.MaxValue; i++ )
{
string header = objFolder.GetDetailsOf(null, i);
if (String.IsNullOrEmpty(header))
break;
arrHeaders.Add(header);
}
foreach(Shell32.FolderItem2 item in objFolder.Items())
{
for (int i = 0; i < arrHeaders.Count; i++)
{
Console.WriteLine("{0}\t{1}: {2}", i, arrHeaders[i], objFolder.GetDetailsOf(item, i));
}
}
}