Обсуждение видеоуроков AutoCAD VBA

Автор Тема: Обсуждение видеоуроков AutoCAD VBA  (Прочитано 206023 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн ediczr2012Автор темы

  • ADN OPEN
  • Сообщений: 31
  • Карма: 0
Добрый день.
При выполнении скрипта VBA  Вставка блока
Возникает ошибка:

Run-time error ‘-2147418113 (8000ffff)’
Automation error
Catastrophic failure


В чем причина ошибки ?
« Последнее редактирование: 24-08-2016, 10:19:37 от ediczr2012 »

Оффлайн Алексей Кулик

  • Administrator
  • *****
  • Сообщений: 1115
  • Карма: 173
Re: Обсуждение видеоуроков AutoCAD VBA
« Ответ #1 : 24-08-2016, 09:25:45 »
Для начала - текстом указать версию и разрядность AutoCAD. Далее - код в студию (и, возможно, проект). Также текстом описать место ошибки. Просматривать непонятные ролики на ресурсе, к которому у меня на работе заблокирован доступ, я не стану.
У меня в ACAD2009x64 (другой сейчас использовать не могу - это последняя версия, на которую у меня установлен VBA) прекрасно сработал код
Код - Visual Basic [Выбрать]
  1. Option Explicit
  2.  
  3. Public Sub InsBlock()
  4. Dim blkRef as AcaBlockReference
  5. Dim pt as Variant
  6. Dim sName as String
  7.  
  8.   sName = "testblock"
  9.   pt = ThisDrawing.Utility.GetPoint(, "Insertion point : ")
  10.   Set blkRef = ThisDrawing.ModelSpace.InsertBlock(pt, sName, 1, 1, 1, 0)
  11. End Sub
Все, что сказано - личное мнение.

Правила форума существуют не просто так!

Приводя в сообщении код, не забывайте про его форматирование!

Оффлайн Максим Маркевич

  • ADN Club
  • ****
  • Сообщений: 254
  • Карма: 29
  • Skype: evthisrel
Re: Обсуждение видеоуроков AutoCAD VBA
« Ответ #2 : 24-08-2016, 10:02:32 »
Алексей Кулик, я не на работе, посмотрел с ютубчика.
В общем, AutoCAD 2012 (разрядность не смог определить по видео :) ).
Код взят из поста #4 данной темы.

Текст ошибки:
Run-time error ‘-2147418113 (8000ffff)’
Automation error
Catastrophic failure

Ошибка в строке:
Код - Visual Basic [Выбрать]
  1. pp = ThisDrawing.Utility.GetPoint(, "Укажите точку вставки блока:")

Я не совсем понимаю, с чем она связана.

ediczr2012, напиши разрядность AutoCAD и прикрепи проект .dvb.

Оффлайн ediczr2012Автор темы

  • ADN OPEN
  • Сообщений: 31
  • Карма: 0
Re: Обсуждение видеоуроков AutoCAD VBA
« Ответ #3 : 24-08-2016, 10:06:10 »
autoCAD 2012 разрядность 32 версия продукта F107.0.0 SP1

Оффлайн Алексей Кулик

  • Administrator
  • *****
  • Сообщений: 1115
  • Карма: 173
Re: Обсуждение видеоуроков AutoCAD VBA
« Ответ #4 : 24-08-2016, 10:22:59 »
ediczr2012, задавай вопросы текстом, а не видеороликами.
Все, что сказано - личное мнение.

Правила форума существуют не просто так!

Приводя в сообщении код, не забывайте про его форматирование!

Оффлайн Алексей Кулик

  • Administrator
  • *****
  • Сообщений: 1115
  • Карма: 173
Re: Обсуждение видеоуроков AutoCAD VBA
« Ответ #5 : 24-08-2016, 10:24:42 »
Я не совсем понимаю, с чем она связана.
Возможно, проблема с совместимостью проектов. Скажем, сначала dvb разрабатывался в 2015х64 / 2016х64, а потом его тупо, не проверяя никакие References, открыли в 2012.
Все, что сказано - личное мнение.

Правила форума существуют не просто так!

Приводя в сообщении код, не забывайте про его форматирование!

Оффлайн Максим Маркевич

  • ADN Club
  • ****
  • Сообщений: 254
  • Карма: 29
  • Skype: evthisrel
Re: Обсуждение видеоуроков AutoCAD VBA
« Ответ #6 : 24-08-2016, 10:33:39 »
Возможно, проблема с совместимостью проектов. Скажем, сначала dvb разрабатывался в 2015х64 / 2016х64, а потом его тупо, не проверяя никакие References, открыли в 2012.
Дело в том, что сам dvb не распространяется. То есть ediczr2012 взял код с поста #4 и скопировал в свой проект, ну и в коде "Вставка блока" не нужны никакие References.

Оффлайн Алексей Кулик

  • Administrator
  • *****
  • Сообщений: 1115
  • Карма: 173
Re: Обсуждение видеоуроков AutoCAD VBA
« Ответ #7 : 24-08-2016, 10:36:13 »
Максим Маркевич, ну мы же не знаем полной истории.
P.S. Вообще есть предложение - создать отдельную тему "Обсуждение видеоуроков по VBA для AutoCAD", чтобы не засорять этот топик (ну и перенести туда #31 и далее). Как идея?
Все, что сказано - личное мнение.

Правила форума существуют не просто так!

Приводя в сообщении код, не забывайте про его форматирование!

Оффлайн Максим Маркевич

  • ADN Club
  • ****
  • Сообщений: 254
  • Карма: 29
  • Skype: evthisrel
Re: Обсуждение видеоуроков AutoCAD VBA
« Ответ #8 : 24-08-2016, 10:43:46 »
ну мы же не знаем полной истории.
Немножко знаем/знаю.. Дело в том, что ediczr2012 написал мне сразу в лс, я не смог четко определить, в чем дело, поэтому предложил ему оставить вопрос в теме.
P.S. Вообще есть предложение - создать отдельную тему "Обсуждение видеоуроков по VBA для AutoCAD", чтобы не засорять этот топик (ну и перенести туда #31 и далее). Как идея?
Мне кажется, идея очень крутая. Просто изначально Александр Ривилис предложил обсуждать уроки в той же теме, где и сами уроки. Но теперь я вижу, что вот я запишу, например, еще парочку и они уже будут немножко затеряны в этих страницах.
Можно было бы сделать одну тему, вот эту, оставить здесь только уроки (тогда в шапке подпишу, что обсуждение происходит в другой теме), ну и, собственно, обсуждать все в другой теме.
Но надо, конечно, посоветоваться с Александром Ривилисом, потому что изначально это была его идея - так организовать процесс.
А его что-то сегодня не видно.
Ну и, конечно, хотелось бы уже помочь ediczr2012.
ediczr2012, еще раз предлагаю прикрепить тебе свой проект - это файл с расширением .dvb.

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Обсуждение видеоуроков AutoCAD VBA
« Ответ #9 : 24-08-2016, 12:02:39 »
Подозреваю, что проблема связана с AutoCAD / VBA. Возможно требуется переустановка, возможно установка обновлений. Интересно, у  ediczr2012 хоть что-то на VBA работает?
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Обсуждение видеоуроков AutoCAD VBA
« Ответ #10 : 24-08-2016, 12:10:41 »
Вспомнил еще одну очень важную вещь - AutoCAD всех версий до 2014 использует VBA 6.1, которая только 32-разрядная. Если сам AutoCAD 64-разрядный (Windows 64-разрядная), то возникает масса коллизий, связанная с межпроцесным взаимодействием с разной разрядностью.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Максим Маркевич

  • ADN Club
  • ****
  • Сообщений: 254
  • Карма: 29
  • Skype: evthisrel
Re: Обсуждение видеоуроков AutoCAD VBA
« Ответ #11 : 24-08-2016, 12:17:18 »
Подозреваю, что проблема связана с AutoCAD / VBA. Возможно требуется переустановка, возможно установка обновлений. Интересно, у  ediczr2012 хоть что-то на VBA работает?
Очень хороший вопрос. )
ediczr2012, попробуй что-то самое простое типа:
Код - Visual Basic [Выбрать]
  1. Sub Hello()
  2.     MsgBox "HelloWorld!!"
  3. End Sub
Вспомнил еще одну очень важную вещь - AutoCAD всех версий до 2014 использует VBA 6.1, которая только 32-разрядная. Если сам AutoCAD 64-разрядный (Windows 64-разрядная), то возникает масса коллизий, связанная с межпроцесным взаимодействием с разной разрядностью.
А вот это вполне может быть причиной неработоспособности. Лично я начинал писать VBA на AutoCAD 2015x64 на Windows7x64. Соответственно, с тех пор менялось все в том же ключе: сейчас у меня AutoCAD 2017x64, a Windows10x64. И никогда я не ловил подобной ошибки. Вообще, никогда.

Оффлайн Алексей Кулик

  • Administrator
  • *****
  • Сообщений: 1115
  • Карма: 173
Re: Обсуждение видеоуроков AutoCAD VBA
« Ответ #12 : 24-08-2016, 12:25:27 »
Ну, 2009х64 тем не менее отработал корректно... Установленного 2012х64 нет, проверить не на чем :(
Все, что сказано - личное мнение.

Правила форума существуют не просто так!

Приводя в сообщении код, не забывайте про его форматирование!

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Обсуждение видеоуроков AutoCAD VBA
« Ответ #13 : 24-08-2016, 12:25:47 »
И никогда я не ловил подобной ошибки
Гугл тоже практически ничего про такую ошибку не знает. На форуме Autodesk в разделе AutoCAD VBA такая ошибка встретилась только один раз для AutoCAD 2011 x64 в Windows 7: http://forums.autodesk.com/t5/visual-basic-customization/selectonscreen-win7-64bit-with-version-2011-acad/m-p/3156626/highlight/true#M95539
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13882
  • Карма: 1787
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Обсуждение видеоуроков AutoCAD VBA
« Ответ #14 : 24-08-2016, 12:28:15 »
Лично я начинал писать VBA на AutoCAD 2015x64 на Windows7x64.
Начиная с AutoCAD 2014 он использует VBA 7.1, который имеет ту же разрядность, что и сам AutoCAD: http://adn-cis.org/autocad-2014-dlya-razrabotchikov.html
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение