Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.02.04;
Скачать: CL | DM;

Вниз

KOL+COM   Найти похожие ветки 

 
Splinter_Ok ©   (2006-05-11 11:24) [0]

Можно ли осуществлять управление работой офисных приложений, при помощи библиотеки KOL и использовать для этого элементы такие как:
"TWordDocument" или "TWordApplication". Delphi 7


 
Vedun   (2006-05-11 23:38) [1]

Лучше через позднее связывание. Так в программу добавляется один только модуль ComObj. Визуального кода он, по-моему, не несет и не должен сильно увеличивать размер программы. А дальше все просто:

uses ComObj;
....
var W: variant;
begin
 W:=CreateOleObject ("Word.Application");
....

И далее делаем все, что нам надо.


 
Vedun   (2006-05-11 23:57) [2]

Попробовал. Прошу прощения, данный метод не сработал.


 
Андрей ©   (2006-05-12 19:06) [3]

а может надо было использовать KOLComObj? Например отсюда
http://bonanzas.rinet.ru/ActiveKOL.zip


 
Андрей ©   (2006-05-12 19:08) [4]

А если конкретно Word, то можно попробовать
http://bonanzas.rinet.ru/kolword.zip


 
Splinter_Ok ©   (2006-05-13 01:06) [5]

Большое спасибо за помощь! Это как раз мне подходит.


 
Vedun   (2006-05-13 23:59) [6]

Хочу немного продолжить тему. Добавляю модуль KOLComObj. Запускаю на выполнение следующий код:

uses KOLComObj;
...
var w: variant;
begin
 W:=CreateOleObject ("Word.Application");
 W.Visible:=True;
end;

Функция CreateOleObject вызывает ошибку. Причем неопределенную ошибку.
Может в KOL работа с серверами автоматизации через позднее связывание работает по-другому?


 
ECM ©   (2006-05-15 16:56) [7]


> Функция CreateOleObject вызывает ошибку. Причем неопределенную
> ошибку.

Ну неопределенной она быть не может... :)

KOL.OleInit - один раз (например в FormCreate)
не забыли вызвать?


 
ECM ©   (2006-05-15 19:07) [8]

З.Ы.
По поводу KOLComObj (может я не прав - поправьте меня)
Я думаю в D6 и выше - нет смысла им пользоваться. В этом случае одновременно подключаются модули err и Variants(не fake). В Variants в свою очередь тянет за собой SysUtils co всей своей обработкой исключений. Получается код err уже лишний.
Вместо KOLComObj я использую связку Variants,ComObj - при этом код получается на несколько килобайт меньше. Да и непонятные глюки позднего связывания (появляющиеся при использовании KOLComObj -  почему пока мне неясно) пропадают.


 
Vedun   (2006-05-15 22:51) [9]


> KOL.OleInit - один раз (например в FormCreate)

Про это не знал. Спасибо. Теперь работает.

> Вместо KOLComObj я использую связку Variants,ComObj - при
> этом код получается на несколько килобайт меньше.

Действительно. У меня получилось на 4096 байт меньше.



Страницы: 1 вся ветка

Текущий архив: 2007.02.04;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.042 c
9-1143470364
Shweps
2006-03-27 18:39
2007.02.04
Документация по созданию игры на Delphi


2-1169158460
AlexeyT
2007-01-19 01:14
2007.02.04
Печать TImage/TBitmap?


2-1169219514
Linu_X_oid
2007-01-19 18:11
2007.02.04
Объясните, пожалйста, как можно нормально создать чат в Delphi 7


4-1157964007
Alex_AA
2006-09-11 12:40
2007.02.04
Считать серийник винта


15-1168543701
ArtemESC
2007-01-11 22:28
2007.02.04
Так и не понял Паскаля...