Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Свойства файла
Форум на CrossPlatform.RU > Библиотеки > Другие библиотеки
Elfinit
Наверняка все видели в свойствах файла в винде вкладку "Сводка", или "Подробно". Так вот, очень хочется читать программно эти свойства.
Обращался уже к IPropertyStorage, не получилось. КОнкретно - постоянно получаю либо E_S_ACCESSDENIED, либо ещё что...Очень хотелось бы работающее решение увидеть.
А теперь - конкретный пример. Есть файлик-картинка. С свойствах в WinXP ничего не видим (См. скрин)
В свойствах Windows 7 - видим всё, что есть на самом деле)
Вы скажете мне - "ну так это значит в семёрке и появилось!". И с этими словами я кидаю картинку в Picasa, находять в XP. И она всё видит.
Итак...Как быть?)
Litkevich Yuriy
ну видимо в картинках предусмотрены такие поля, надо искать описание на формат файла.
Litkevich Yuriy
Elfinit, вот что я накопал в вики, в статье JPEG, есть описание маркеров, там есть маркер APP1, который хранит информацию связанную с приложением в формате EXIF
Elfinit
С Exif я, тьфу-тьфу, разобрался и успешно работаю. Так вот нет там этих данных)
Вот открой свойства любого файла в Windows. У него есть вкладка "сводка". Это как раз оно и есть. Я к тому, что суть не в том, что это изображение. Эти самые свойства (автор, комментарий, ключевые слова....) могут быть у любого файла в винде. А реализуются они некими альтернативными потоками (Alternate data steams, вроде как). Вычитал, в частности, здесь:

http://msdn.microsoft.com/en-us/library/aa...28VS.85%29.aspx
http://msdn.microsoft.com/en-us/library/aa...28VS.85%29.aspx
http://msdn.microsoft.com/en-us/library/aa...28VS.85%29.aspx

Пробовал закодить вот это:
http://msdn.microsoft.com/en-us/library/aa...28VS.85%29.aspx
Но чуть ли не в самом начале (открытие хранилища) прога говорит, что не будет ничего мне давать))

Вот этот:
http://www.codeproject.com/KB/files/SummInfoPropSetFile.aspx
Код рабочий, но переделать его под свои нужды не удалось (мне нужно только прочесть все данные альтернативных потоков). Говорит, ACCESS_DENIED, хотя файл, вроде, никем в этот момент не используется.....

Решение однозначно существует! Очень хочется его получить....

З.Ы. Маркер APP1, как пишется в вики, как раз содержит exif-данные. Там ничего нужного мне нет)) Предлагаю вообще забыть, что мы имеем дело с изображениями)
Elfinit
Вопрос по данному конкретному случаю снят (изображения). Ключевые слова в данном случае хранятся не в альтернативных потоках, а в iptc-метаданных (это не exif!). Но вопрос получения свойств файла "сводка", по-моему, можно и продолжить)
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.