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

Вниз

Не могу запустить Word   Найти похожие ветки 

 
poratora   (2002-11-09 08:41) [0]

хочу запустить word и открыть файл. делаю так
----------------------

uses comobj,word97,oleserver;

...

var: wa1: TWordApplication;
fn:olevariant;
...
begin
fn:="test.doc";
wa1:=CreateOleObject("Word.Application");
wa1.AutoConnect:=true;
wa1.AutoQuit:=true;
wa1.ConnectKind:=ckRunningOrNew;

wa1.documents.Open
(fn,emptyparam,emptyparam,emptyparam,emptyparam,emptyparam,emptyparam,emptyparam,emptyparam,emptyparam);

и получаю такую ошибку:

project raised exception class EOleSysError with message "Не был произведен вызов CoInitialize".

....


---------------------
Где руки мои искривились? Если выкладывать на форму компоненту с закладки servers, то все
нормально работает. А вот так - ошибка. Где смотреть?


 
Николай Быков ©   (2002-11-09 09:03) [1]

А почему нельзя с помощью процедуры ShellExecute()запскать WINWORD.EXE с параметром=путь к документу?


 
iNew   (2002-11-09 09:10) [2]

> Николай Быков
А если он захочет управлять из программы содержимым документа?


 
iNew   (2002-11-09 09:15) [3]

Я делал так:
var Template, NewTemplate,ItemIndex:OleVariant;
begin
ItemIndex:=1;
try
Wordapplication1.Connect;
except
MessageDlg("Word may not be installed", mtError, [mbOk], 0);
Abort;
end;
try
WordApplication1.Documents.Open(FileName,
EmptyParam,EmptyParam,EmptyParam,
EmptyParam,EmptyParam,EmptyParam,
EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam);
except
on E: Exception do
begin
ShowMessage(E.Message);
WordApplication1.Disconnect;
end;
end;
try
Template := EmptyParam;
NewTemplate :=False;
{Assign WordDocument component}
WordDocument1.ConnectTo(WordApplication1.Documents.Item(ItemIndex));
except
on E: Exception do
begin
ShowMessage(E.Message);
WordApplication1.Disconnect;
end;
end;
end;


 
TTCustomDelphiMaster ©   (2002-11-09 10:50) [4]

try
CoInitializeEx(nil, COINIT_APARTMENTTHREADED);
// Работаем с Word
...
finally
CoUninitialize;
end;

В стандартном приложении вызов CoInitializeEx производится при инициализации приложения.



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

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

Наверх




Память: 0.47 MB
Время: 0.017 c
1-59116
Soors
2002-11-05 21:52
2002.11.18
Запись в EXE


1-59145
Тень
2002-11-08 17:24
2002.11.18
Как сохронить текст в TStringGrid?


1-59155
_acme
2002-11-08 06:31
2002.11.18
Добавление узлов в TreeView


1-59105
murzikN
2002-11-04 13:10
2002.11.18
ListBox с числом строк больше 32 К. Кто знает как сделать?


8-59294
Сергей Ф.В.
2002-07-29 20:49
2002.11.18
Сдвиг попиксельно в лево в PaintBoxe