Aquí es una forma en C# para mostrar las propiedades personalizadas archivo
DSOFile.OleDocumentPropertiesClass file = new DSOFile.OleDocumentPropertiesClass();
file.Open(@"C:\setup.exe", false, DSOFile.dsoFileOpenOptions.dsoOptionDefault);
string key = "key1";
object value = "value1";
// Adds new custom property.
file.CustomProperties.Add(key, ref value);
// Go through existing custom properties.
foreach (DSOFile.CustomProperty p in file.CustomProperties)
{
Console.WriteLine("{0}:{1}", p.Name, p.get_Value().ToString());
}
file.Close(true);
Primero en file.CustomProperties.Add (clave, valor ref); modificando la clave de atributo (la propiedad, puede modificarlo, aquí es lo siguiente. en clave que debe poner uno de los siguientes attribute_names, que aquí se describe como constantes por los nombres de sus valores reales
Const FILE_ATTRIBUTE_READONLY = 1
Const FILE_ATTRIBUTE_HIDDEN = 2
Const FILE_ATTRIBUTE_SYSTEM = 4
Const FILE_ATTRIBUTE_DIRECTORY = &H10
Const FILE_ATTRIBUTE_ARCHIVE = &H20
Const FILE_ATTRIBUTE_ENCRYPTED = &H40
Const FILE_ATTRIBUTE_NORMAL = &H80
Const FILE_ATTRIBUTE_TEMPORARY = &H100
Const FILE_ATTRIBUTE_SPARSE_FILE = &H200
Const FILE_ATTRIBUTE_REPARSE_POINT = &H400
Const FILE_ATTRIBUTE_COMPRESSED = &H800
Const FILE_ATTRIBUTE_OFFLINE = &H1000
Const FILE_ATTRIBUTE_NOT_CONTENT_INDEXED = &H2000
entonces usted debe asignar el valor deseado para la constante, en valor
Luego de ver cada propiedades de cada archivo que se muestran en la línea de
Console.WriteLine("{0}:{1}", p.Name, p.get_Value().ToString());
http://stackoverflow.com/questions/1235150/ dsofile-c-api-ntfs-custo m-file-properties –