Главная страница
    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.46 MB
Время: 0.006 c
1-1218039013
andreil
2008-08-06 20:10
2009.10.04
Быстрое сравнение строк?


15-1248597219
Kerk
2009-07-26 12:33
2009.10.04
Колбаса


15-1249260855
Дмитрий С
2009-08-03 04:54
2009.10.04
В кипятке 4-5 минут.


2-1249219399
bag
2009-08-02 17:23
2009.10.04
список из случайных неповторяющихся чисел


2-1248937296
dmitry1991
2009-07-30 11:01
2009.10.04
#1 - что это за символ?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский