:: Не фоксом единым
Автоматизация MSWord из VC++
NSF
Автор
Среди классов которые вытаскиваются из библиотеки типов для MSOffice2000(да и для MSOffice97) класс WordBasic отсутствует ... Метод LPDISPATCH _Application::GetWordBasic() присутствует, но к чему приводить LPDISPATCH?Подскажите, plees, как можно вытащить этот самый WordBasic ... Или из какой версии Office его можно вытащить... Word2.0?
Ratings: 0 negative/0 positive
Re: Автоматизация MSWord из VC++
Igor Korolyov

Сообщений: 34580
Дата регистрации: 28.05.2002
А зачем тебе потребовался этот древний WordBasic (он оставлен явно для
совместимости)? Ведь всё замечательно автоматизируется посредством
"правильных" COM интерфейсов - начиная от Word.Application...




------------------
WBR, Igor
Ratings: 0 negative/0 positive
Re: Автоматизация MSWord из VC++
NSF
Автор
Hi ...
Да просто некоторые вещи на нем делать гораздо проще ... Например, используя туже команду WordBasic NextCell можно забыть о проблеме добавления строк, т.к. при выдаче этой команды в момент, когда курсор позиционируется та последней ячейке в строке, автоматически добавлялась следующая строка в таблицу и курсор позиционировался на ее первой ячейке ... Не говоря уж о несравненно более элементарном способе добавления собственно новой строки через
wordbasic.TableInsertRow ...
("проблеме добавления строк" - это я к тому, что
1) Попробуйте "докопаться" в Microsoft Word Help до команд InsertRowsAbove и InsertRowsBelow, когда они принадлежат объекту Wordа "Selection"
2)Собственно команда добавления строки из коллекции строк: Rows.Add(Row) - попробуйте из VC++ передать параметр Row(объект "строка" над которой произойдет вставка новой строки) - никто из тех, с кем я переписывался, так и не смог этого сделать (совсем не хочу сказать, что сделать это невозможно ... я буду благодарен за любой совет по этому вопросу) ... спасает только то, что параметр этот - необязательный и катит следующий код
COleVariant covOptional((long)DISP_E_PARAMNOTFOUND, VT_ERROR);
Row oNewRow = oRows.Add(covOptional);
)
Список можно продолжить ... Да и интересно зачем тогда Microsoft экспонировать метод GetWordBasic(), если объекта такового нет... (нет, он есть, конечно же, т.к. код написанный на Foxe еще для Word6.0 катит под любой офис ... невозможно его вытащить для VC++)
Ratings: 0 negative/0 positive


Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 6 (Гостей: 6)

© 2000-2024 Fox Club 
Яндекс.Метрика