ASP.Net Извлечь значение свойства Title из файла - PullRequest
1 голос
/ 21 декабря 2010

Из приложения ASP.Net C # мне нужно получить доступ к значению свойства 'Title' из нескольких (более 100) файлов, находящихся в локальной файловой системе.

например. Щелкните правой кнопкой мыши файл в вашей файловой системе и выберите «Свойства». На вкладке «Сводка» есть свойство «Заголовок» вместе со свойствами «Тема», «Категория» и т. Д. Я после значения, находящегося в собственности 'Title'.

При разработке веб-приложения и тестировании с использованием Cassini мне удалось извлечь значение свойства 'Title' с помощью Shell32.dll

Folder folder = _shell.NameSpace(Path.GetDirectoryName(path));
FolderItem item = folder.ParseName(Path.GetFileName(path));
folder.GetDetailsOf(item, (int)eDetailColumns.Title);

Приведенный выше код не работает при запуске в IIS. Объект «папка» не содержит никаких элементов.

Я прочитал, что рабочий процесс ASP.Net не имеет запущенного экземпляра проводника - таким образом, ни одна из команд Shell не вызывала некорректную работу моего кода Shell32.

Есть ли другой способ извлечения значения свойства 'Title' из приложения ASP.Net?

Заранее спасибо.

1 Ответ

1 голос
/ 23 декабря 2010

Я только что протестировал следующий код, работающий в IIS7, и у меня есть доступ к заголовку документа Word, который я создал, и различным другим принадлежащим ему свойствам:

Shell shell = new Shell();
string path = Server.MapPath("~/Word.doc");

Folder folder = shell.NameSpace(Path.GetDirectoryName(path));
FolderItem folderItem = folder.ParseName(Path.GetFileName(path));

for(int i = 0; i < 32; i++)
{
  Response.Write(i + " : " +folder.GetDetailsOf(folderItem, i) + "<br/>");
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...