-
Задача на первый взгляд простая, но никак не могу решить. Как создать OLE-сервер средствами Delphi известно (мастер намного облегчает работу). А вот как привязать к своему серверу определенный тип файла, который будучи помещен в контейнер при активации вызовет мой сервер. Из всей информации нашел лишь событие, которое должно отрабатывать на сервере (OnGetEmbeddedItem), причем ссылки на сам объект в этом событии не обнаружил, IPersistStorage, которому нужно указать либо само хранилище, либо имя хранилища объекта. Где все это взять, как связать в рабочий код? MS Visual Studio формирует MFC-приложение, но с пустыми методами, да и в C++ я почти не разбираюсь. Буду благодарен за любую информацию или ссылку.
-
> будучи помещен в контейнер при активации вызовет мой сервер
какой контейнер?
-
> umbra © (30.07.07 16:22) [1] > какой контейнер?
Ну как в какой ?
В олей-контейнер, разумеется.
Тот самый, участвующий в OleLoad()
-
TOleContainer при активации объекта вызывает OleRun, который судя по всему вызывает RunableObject.Run. Попробую так вопрос поставить: как сделать объект (документ) runable и связать его со своим сервером. Я так понимаю, что объект будет помещен в Storage (проще гоаворя), с каким-то именем. Как узнать это имя? Что потом вернуть контейнеру, чтобы он понял, что обработка документа завершена сервером? Как вообще эта схема работает?
-
Удалено модератором
-
-
Удалено модератором
|