ekya |
Отправлено: 22.07.2003, 23:26 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 27
|
По аналогии с Excel'ем написал следующий код:
TMyWord::TMyWord(String File)
{
// если Word запущен — подключиться к нему
try {
App=Variant::GetActiveObject("Word.Application");
} catch(...) {
// Word не запущен — запустить его
try { App=Variant::CreateObject("Word.Application"); } catch (...) {
;
} }
try {
if(File!="")
App.OlePropertyGet("Documents").OleProcedure("Open",File);
else
App.OlePropertyGet("Documents").OleProcedure("Add");
// Doc=App.OlePropertyGet("Documents", 1); <-- Это выполнять не хочет
Doc=App.OlePropertyGet("ActiveDocument");
} catch(...) {
;
}
}
А, Item — это у них метод, т.е. return void, т.к. OleProcedure
Хочется получить указатель на объект посредством обращения через Итем или как нибудь еще.
Отредактировано ekya — 23/07/2003, 00:28 |
|
ekya |
Отправлено: 24.07.2003, 21:22 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 27
|
Я сам нашел ответ на свой вопрос.
Просьба администатору удалить данную тему.
Обещаю выложить исходники для работы с Excel и Word, как закончу свою работу. |
|
Gadzila |
Отправлено: 25.07.2003, 11:18 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 21
|
Я и сам наткнулся на такую бороду,
потом пошел не через Word.Application а через Word.Basic,
прокатило нормально, хоть там и чуть по другому.
Но заткнулся на переходе на закладку, несмотря на FAQ39.
А как ты свою проблемму решил? |
|
ekya |
Отправлено: 05.08.2003, 18:10 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 27
|
Просто это Сишное понимание: нет процедур одни функции!!!
Item надо вызывать как OleFunction
Пример:
Doc.OlePropertyGet("FormFields").OleFunction("Item",name).OlePropertySet("Result", WideString(data));
и не надо использовать Word.Basic, хотя ... |
|