Свойства файла, А кто-нибудь умеет программно их читать?? |
Здравствуйте, гость ( Вход | Регистрация )
Свойства файла, А кто-нибудь умеет программно их читать?? |
Elfinit |
30.11.2009, 23:59
Сообщение
#1
|
Участник Группа: Участник Сообщений: 127 Регистрация: 17.3.2009 Из: Казань Пользователь №: 619 Спасибо сказали: 7 раз(а) Репутация: 1 |
Наверняка все видели в свойствах файла в винде вкладку "Сводка", или "Подробно". Так вот, очень хочется читать программно эти свойства.
Обращался уже к IPropertyStorage, не получилось. КОнкретно - постоянно получаю либо E_S_ACCESSDENIED, либо ещё что...Очень хотелось бы работающее решение увидеть. А теперь - конкретный пример. Есть файлик-картинка. С свойствах в WinXP ничего не видим (См. скрин) В свойствах Windows 7 - видим всё, что есть на самом деле) Вы скажете мне - "ну так это значит в семёрке и появилось!". И с этими словами я кидаю картинку в Picasa, находять в XP. И она всё видит. Итак...Как быть?) |
|
|
Litkevich Yuriy |
1.12.2009, 2:24
Сообщение
#2
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
ну видимо в картинках предусмотрены такие поля, надо искать описание на формат файла.
|
|
|
Litkevich Yuriy |
1.12.2009, 2:55
Сообщение
#3
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
Elfinit, вот что я накопал в вики, в статье JPEG, есть описание маркеров, там есть маркер APP1, который хранит информацию связанную с приложением в формате EXIF
|
|
|
Elfinit |
1.12.2009, 9:50
Сообщение
#4
|
Участник Группа: Участник Сообщений: 127 Регистрация: 17.3.2009 Из: Казань Пользователь №: 619 Спасибо сказали: 7 раз(а) Репутация: 1 |
С 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 - 1.12.2009, 9:52 |
|
|
Elfinit |
1.12.2009, 11:29
Сообщение
#5
|
Участник Группа: Участник Сообщений: 127 Регистрация: 17.3.2009 Из: Казань Пользователь №: 619 Спасибо сказали: 7 раз(а) Репутация: 1 |
Вопрос по данному конкретному случаю снят (изображения). Ключевые слова в данном случае хранятся не в альтернативных потоках, а в iptc-метаданных (это не exif!). Но вопрос получения свойств файла "сводка", по-моему, можно и продолжить)
|
|
|
Текстовая версия | Сейчас: 22.12.2024, 14:06 |