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

Вниз

TWordApplication выдает ошибку - "вызов был отклонен"   Найти похожие ветки 

 
ford ©   (2009-07-27 11:46) [0]

Здравствуйте уважаемые!
Использую ворд для проверки орфографии, для этого на форме разместил два компонента TWordApplication и TWordDocument

WordApplication.ConnectKind:=ckNewInstance;

вот сама процедура
...
WordApp.Connect;
WordDoc.ConnectTo(WordApp.Documents.Add(EmptyParam, EmptyParam,EmptyParam,EmptyParam));

i:=0;
repeat
      WordDoc.Range.Delete(EmptyParam,EmptyParam);
      WordDoc.Range.Set_Text(lst[i]);
      colSpellErrors := WordDoc.SpellingErrors;
      if colSpellErrors.Count <> 0 then
       Begin
        Inc(i);
       end
      Else
        Lst.Delete(i);
until i>=Lst.Count;
WordDoc.Disconnect;


где lst:TStringList; и содержит список слов на проверку

ошибка вылетает если во время цикла проверки был запущен word набран любой текст и закрыт ворд. Или перед запуском программы также открыть ворд, а во время выполнения цикла его закрыть.

Подскажите, как сделать чтобы моя программа не зависела, в данном случае, от действий пользователя с Word?


 
Anatoly Podgoretsky ©   (2009-07-27 12:14) [1]

> ford  (27.07.2009 11:46:00)  [0]

Не подключайся к текущему экземпляру Ворд, имей свой экземпляр только для себя.
Подробности в справке.


 
ford ©   (2009-07-27 12:18) [2]

Сдела по другому :)
нашел в интернете пример на VBasic
переделал джуть-джуть и работает :)

Var WordApp:Variant;
...
WordApp:=CreateOleObject("word.Application");
i:=0;
repeat
     if not WordApp.CheckSpelling(Lst[i]) then
      Begin
       Inc(i);
      end
     Else
       Lst.Delete(i);
until i>=Lst.Count;
WordApp.Quit(False);


 
ford ©   (2009-07-27 12:20) [3]


> Anatoly Podgoretsky ©   (27.07.09 12:14) [1]

яж вроде и использовал новый экземпляр
когда поставил
WordApplication.ConnectKind:=ckNewInstance;
во всяком случае я так понял прочитав в хелпе...


 
Anatoly Podgoretsky ©   (2009-07-27 13:09) [4]

> ford  (27.07.2009 12:20:03)  [3]

Правильно, именно это свойство, но видимо надо еще и WordApp.Connect не использовать. Я работаю с Экселем, без аналогичной строчки получается полная изоляция ExcelAllpication - не страшны никакие ошибки, они просто не влияют на другие приложения.



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

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

Наверх




Память: 0.48 MB
Время: 0.018 c
15-1248944170
test
2009-07-30 12:56
2009.10.04
Видео карты 9600GT(260) VS EAH4850


2-1249185321
Disa
2009-08-02 07:55
2009.10.04
При перетаскивании файла на форму, он открывался


3-1227530650
maxbog
2008-11-24 15:44
2009.10.04
Проблема с исходником Delphi


15-1249070497
тимохов
2009-08-01 00:01
2009.10.04
Кто интересуется пассажирской авиацией?


15-1249035025
Mixa
2009-07-31 14:10
2009.10.04
Нужно написать ПО для флешки