|
|
|
Word: исключение с сообщением "Вызов был отклонён".
|
|||
|---|---|---|---|
|
#18+
Доброго времени суток. В программе есть функция создания docx-документов на основе шаблонов. На некоторых компьютерах она не работает. Файл создаётся следующим образом: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. Сама функция очень большая, поэтому привожу фрагмент. Если Word уже запущен, то документ создаётся, никаких проблем нет. Если Word не запущен, то отображается шаблон со значениями по умолчанию, а в StackTrace сообщение об ошибке "Вызов был отклонен". Для создания файла использовал метод Open вместо Add, думал может в нём какие-то глюки, но нет ошибка та же самая. Перерыл кучу форумов, статей. На сайте Microsoft пишут только про Visual Studio и Office 2007. У пользователей стоит Office не ниже 2010 и это же сообщение об ошибке. Повторюсь, что ошибка плавающая, не на всех компьютерах её удаётся повторить. Для Excel-я есть свойство Ready, т.е. можно проверить готов он работать или нет, а у Word-а почему-то такого свойства нет. Делать несколько попыток создать файл не вариант, так как будут создаваться несколько пустых шаблонов, которые потом надо будет закрывать и к чему устраивать такой бардак на компьютерах пользователей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2020, 05:36 |
|
||
|
Word: исключение с сообщением "Вызов был отклонён".
|
|||
|---|---|---|---|
|
#18+
Sh2kerr, Тут, пораскинув хрустальными шарами, есть предположение, что зависит: русская али английская. При обращении к функционалу ворда программно могут быть проблемы. Так же могут возникнуть проблемы при попытке заполнить поля, имеющие тип более новый, чем предусмотрен в текущей версии ворд. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2020, 09:10 |
|
||
|
Word: исключение с сообщением "Вызов был отклонён".
|
|||
|---|---|---|---|
|
#18+
Sh2kerr, и, да: добавь Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2020, 09:28 |
|
||
|
Word: исключение с сообщением "Вызов был отклонён".
|
|||
|---|---|---|---|
|
#18+
Gerasimenko, спасибо за ответы. Ещё раз почитал документацию. Написал MWord.DisplayAlerts = -1 . Константа wdAlertsAll равна -1. Думал увижу, что там такого сообщает word, а он без единой ошибки создал мне файл. Как это связано пока понять невозможно. Ладно бы показал сообщение об ошибке с более детальной информацией. Возможно тут нет прямой зависимости, попробую на других компьютерах. В приведённом фрагменте кода не написал, но до этого было MWord.DisplayAlerts = 0 . Константа wdAlertsNone = 0. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2020, 11:40 |
|
||
|
Word: исключение с сообщением "Вызов был отклонён".
|
|||
|---|---|---|---|
|
#18+
Sh2kerr, Общее замечание в части кода - при вызове методов Automation-объекта не ленись явно указывать имена параметров, больше шансов что при смене версии офиса не вылезут глюки Код: pascal 1. В части ошибки - копай в сторону антивируса, типичная для его работы ситуация. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2020, 13:02 |
|
||
|
Word: исключение с сообщением "Вызов был отклонён".
|
|||
|---|---|---|---|
|
#18+
Много (лишнего) текста в приведённом исходном коде (целая плетёнка из if-ов, зачем она здесь?) И нет главной информации: какая строка вызывает ошибку Далее, выясняется, что в приведённом коде отсутствует строка с обращением к сервису (MWord.DisplayAlerts = 0) Автор, нельзя ли покорректнее объяснить суть возникаемой проблемы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2020, 08:18 |
|
||
|
Word: исключение с сообщением "Вызов был отклонён".
|
|||
|---|---|---|---|
|
#18+
У меня такая ошибка возникала, если офис был не активирован, и при его запуске выскакивала табличка с предложением об активации. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2020, 09:04 |
|
||
|
Word: исключение с сообщением "Вызов был отклонён".
|
|||
|---|---|---|---|
|
#18+
Судя по сообщению, можно предположить, что microsoft word выводит (возможно, какое-то "скрытое") сообщение, а пользователь не отвечает на него. до сих пор непонятно, какая строка вызывает ошибку - старт OLE-сервера? - добавление документа в запущенный экземпляр сервера? - добавление полей в открытый (или созданный) документ? в данной теме все занимаются гаданием на кофейной гуще - кто про что вспомнит. Кто-то про добавление полей, кто-то рекомендует метод добавления документа обернуть, кто-то общие предположения выводит гугл в первых строках выдаёт результат на нашем же форуме https://www.sql.ru/forum/1319135/ole-ms-excel-vyzov-byl-otklonen-vo-vremya-dialoga Кстати, там есть и про DisplayAlerts. приводится даже несколько вариантов решений, но прежде чем их разбирать - хотелось бы понять, в каком месте возникает ошибка? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2020, 13:09 |
|
||
|
Word: исключение с сообщением "Вызов был отклонён".
|
|||
|---|---|---|---|
|
#18+
AnTe, исключение возникает при создании документа, т.е. вызова методов Open либо Add, результат одинаковый. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2020, 07:23 |
|
||
|
Word: исключение с сообщением "Вызов был отклонён".
|
|||
|---|---|---|---|
|
#18+
1. правильно ли я понимаю, что подошло бы такое описание проблемы: Код: pascal 1. 2. 3. 4. 5. 6. 7. 2. Если пункт 1 выполняется - варьировали ли параметры метода Add? судя по документации, https://docs.microsoft.com/ru-ru/office/vba/api/word.documents.add при вызове метода допустимы четыре параметра ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2020, 09:14 |
|
||
|
Word: исключение с сообщением "Вызов был отклонён".
|
|||
|---|---|---|---|
|
#18+
Как-то сталкивался с таким сообщением, когда увидел на компе клиента слетевшую активацию Office 2013, правда там был не Ворд, а Ёксель. При открытии Ёкселя вместе с этим сообщением появлялось окно с ошибкой активации продукта. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2020, 14:51 |
|
||
|
Word: исключение с сообщением "Вызов был отклонён".
|
|||
|---|---|---|---|
|
#18+
Нашёл такое решение. Проверил на компьютере пользователя, у которого эта ошибка стабильно повторялась. Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Думал проблема в свойстве DisplayAlerts, присваивал ему значение -1 (показывать все предупреждения) оказалось, что это не так. DisplayAlerts никак не влияет на создание файла. 0 - не показывать предупреждения. В документации не написано, видимо по умолчанию свойство Visible = false. Такой вывод сделал закоментировав строку: MWord.Visible := false; Если присвоить true программа падает с ошибкой "Вызов был отклонён". Согласно документации метод Add принимает 4 параметра. Четвёртый как раз Visible и по умолчанию у него значение true. Проверял при установленном свойстве Visible = false файл создаётся методами Add и Open. Проблем с активацией нету, Office 2010 не пиратка. Перед созданием файла Word не был запущен. Настройки касперского не трогал и он был запущен. Программа падала при попытке создать файл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2020, 05:40 |
|
||
|
Word: исключение с сообщением "Вызов был отклонён".
|
|||
|---|---|---|---|
|
#18+
Извиняюсь. В предыдущем посте написал, "программа падала при попытке создания файла" . Это уточнение, что ошибка "Вызов был отклонен" происходила не при создании объекта Word.Application и не при заполнении полей, а при создании файла, т.е. при вызове методов Add и Open. А то кто-нибудь подумает, что предложенный вариант не работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2020, 07:06 |
|
||
|
|

start [/forum/topic.php?fid=58&fpage=37&tid=2038028]: |
0ms |
get settings: |
9ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
43ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
2ms |
| others: | 236ms |
| total: | 376ms |

| 0 / 0 |
