Re[2]: Проблема с агрегацией объекта Word.Application
От: kotanas Россия  
Дата: 30.09.04 09:08
Оценка:
Здравствуйте, john_silver, Вы писали:

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


K>>Здравствуйте,


K>>Есть задача — контролировать процесс загрузки и сохранения файлов MS Word (надо модифицировать пути к загружаемым/сохраняемым файлам). Насколько удалось понять это можно было бы решить путем агрегации объекта Word.Application в свой com объект с реализацией интерфейса IMarshal в своем объекте. Однако при попытке создания Word.Application, CoCreateInstance возвращает E_NOAGGREGATION. Действительно офисные объекты не поддерживают агрегацию или я что-то делаю не так?


K>>Буду очень благодарен за всякие мысли по поводу того как это можно реализовать.


K>>С уважением,

K>>Вячеслав

_>При создании агрегируемого объекта CoCreateInstance надо запрашивать обязательно интерфейс IUnknown.

_>У вас это так?

Да. вот такой код:

HRESULT hr = CLSIDFromProgID(L"Word.Application", &clsid);
//...
hr = CoCreateInstance(clsid, this, CLSCTX_LOCAL_SERVER, IID_IUnknown, (void **)&m_pWordUnknown);
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.