![]() |
Модераторы: MetalFan |
![]() ![]() ![]() |
|
cat512 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 438 Регистрация: 20.3.2007 Репутация: 3 Всего: 15 |
Да, забыл написать, там для примера что выложил
надо в реестр добавить раздел HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\Word\Addins\OutlookGrabberAddin.OutlookGrabber а в разделе создать параметр LoadBehavior со значением 3 |
|||
|
||||
aleksh |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 609 Регистрация: 8.7.2008 Репутация: нет Всего: 13 |
твой пример работает отлично, но вот в моем адд-ин-е реализовать такое не полуается
вот в этой строчке
self пустой... |
|||
|
||||
cat512 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 438 Регистрация: 20.3.2007 Репутация: 3 Всего: 15 |
![]() |
|||
|
||||
aleksh |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 609 Регистрация: 8.7.2008 Репутация: нет Всего: 13 |
заработало!
но есть один вопрос: для чего следующий код
? точнее - что за объекты? |
|||
|
||||
cat512 |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 438 Регистрация: 20.3.2007 Репутация: 3 Всего: 15 |
Эх, значит не понял ты для чего мы кашу с моникером городили :-(
У нас при запуске оффисного приложения создаётся Основной (назовём его посредником) объект, владеющий интерфейсами выполняемого приложения! Остальные объекты, создаваемые не оффисным приложением, не имеют доступа к интерфейсам офф. прил. Поэтому, что бы получить доступ к оффис. приложению, в других объектах, мы "ходим" через посредника, который находится в адресном пространстве конкретного приложения word, и возвращает нам его интерфейсы. Так же через него, будут ходить объекты, создаваемые другими копиями оффисного прилож., хотя реально у них должны быть интерфейсы своего приложения. В принципе всё зависит от реализации. Можно например сделать, что бы посредник грабил данные в свои структуры, а в других объектах ты будешь получать интерфейсы на эти структуры и работать с ними. А ещё лучший вариант Реализовать фабрику, которая будет возвращать указатель на единственный созданный объект, IMHO так будет правильней. Код о котором ты спрашиваешь, разделяет контексты выполнения для обекта "посредника" и остальных объектов. Т. е. в посреднике будет выполняться только код, находящийся в блоке
В остальных объектах, будет выполняться код
Т. е. условие
определяет, в контексте какого объекта мы сейчас находимся Это сообщение отредактировал(а) cat512 - 14.10.2010, 16:17 |
||||||
|
|||||||
aleksh |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 609 Регистрация: 8.7.2008 Репутация: нет Всего: 13 |
это понял, не надо уж так... просто во время тестирования не смог создать условия при котором результат был тру - вот и спрашиваю, мол, когда такое может произойти кстати - все реализовал, работает отлично может лучше создать отдельную тему, в ней сделать ссылку на эту и выложить код адд-ин-а? Добавлено через 1 минуту и 23 секунды забыл вопрос пометить решенным |
|||
|
||||
cat512 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 438 Регистрация: 20.3.2007 Репутация: 3 Всего: 15 |
На самом деле условие выполняется, как тру так и фолсе, можешь проверить, изменив условие на противоположное, соответственно инвертировав и блоки кода тоже.
Просто во время тестирования, отладчик показывает только контекст выполнения либо посредника, либо других объектов, т. е в один момент времени он может работать либо с word-ом, либо с другим приложением, поэтому ты на смог посмотреть полный стэк вызовов. На счёт названия темы, не знаю, сделай так как посчитаешь правильным. Это сообщение отредактировал(а) cat512 - 14.10.2010, 16:37 |
|||
|
||||
aleksh |
|
||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 609 Регистрация: 8.7.2008 Репутация: нет Всего: 13 |
если не ошибаюсь - название темы не меняется, поэтому создам, пожалуй, новую Добавлено через 8 минут и 49 секунд большое спасибо cat512 за помощь в написании ниже приведенного кода
|
||||
|
|||||
cat512 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 438 Регистрация: 20.3.2007 Репутация: 3 Всего: 15 |
Result в функциях поинициализируй начальными значениями, иначе на клиенте будешь получать "разрушительный сбой"
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: ActiveX/СОМ/CORBA" | |
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Rrader, Girder. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: ActiveX/СОМ/CORBA | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |