Что делать с IStorage* при dragANDdrop
От: Grisok  
Дата: 13.12.05 14:17
Оценка:
Всех приветствую.
Не имея опыта в данной теме, спрашиваю:
Как извлечь информацию из указателя на IStorage* p,
полученного в результате Drop-а письма Outlook на мое окно?
Требуется записать содержимое письма в файл.
Re: Что делать с IStorage* при dragANDdrop
От: ekamaloff Великобритания  
Дата: 14.12.05 04:53
Оценка:
Здравствуйте, Grisok, Вы писали:

G>Всех приветствую.

G>Не имея опыта в данной теме, спрашиваю:
G>Как извлечь информацию из указателя на IStorage* p,
G>полученного в результате Drop-а письма Outlook на мое окно?
G>Требуется записать содержимое письма в файл.

IStorage — не что иное как интерфейс для доступа к структурированному хранилищу. Следовательно прямой возможности для получения потока данных (например для записи в файл) нет. Вам следует воспользоваться IStorage::EnumElements для получения списка объектов в данном хранилище. Эти объекты могут нескольких типов: другое хранилище (IStorage), поток данных (IStream) и массив байтов (ILockBytes). С ними работаете соответствующим образом: IStorage — IStorage::EnumElements, IStream — IStream::Read, ILockBytes — ILockBytes::ReadAt
It is always bad to give advices, but you will be never forgiven for a good one.
Oscar Wilde
Re[2]: Что делать с IStorage* при dragANDdrop
От: Grisok  
Дата: 14.12.05 07:29
Оценка:
Здравствуйте, ekamaloff, Вы писали:

E>Здравствуйте, Grisok, Вы писали:


G>>Всех приветствую.

G>>Не имея опыта в данной теме, спрашиваю:
G>>Как извлечь информацию из указателя на IStorage* p,
G>>полученного в результате Drop-а письма Outlook на мое окно?
G>>Требуется записать содержимое письма в файл.

E>IStorage — не что иное как интерфейс для доступа к структурированному хранилищу...

Это я понимаю. При перечислении элементов данного хранилища получаю 3 подхранилища и 16 потоков. Все элементы имеют замысловатые имена. Что с этим делать дальше?
Re[3]: Что делать с IStorage* при dragANDdrop
От: Left2 Украина  
Дата: 14.12.05 14:45
Оценка:
Похоже, это сериализованное IMessage

Смотри в сторону MAPI — там есть функции для сериализации IMapiProp в/из IStorage
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.