Autocad не работает vba
- Отметить как новое
- Закладка
- Подписаться
- Отключить
- Подписка на RSS-канал
- Выделить
- Печать
- Отчет
Не запускается макрос VBA для Autocad 2015. Хотя в версии Autocad 2010 все работает, работает также и в Autocad 2008. Запуск макроса осуществляется: Загрузить проект — Запустить макрос VBA. Появляется фатальная ошибка: Unhandled Access Violation Writing 0xbda53ac Exception at bda53ach и вылетает Автокад. Возможно, макрос vba не адаптирован под новую версию автокада. Как запустить макрос vba в Autocad 2015?
- Отметить как новое
- Закладка
- Подписаться
- Отключить
- Подписка на RSS-канал
- Выделить
- Печать
- Отчет
Не запускается макрос VBA для Autocad 2015. Хотя в версии Autocad 2010 все работает, работает также и в Autocad 2008. Запуск макроса осуществляется: Загрузить проект — Запустить макрос VBA. Появляется фатальная ошибка: Unhandled Access Violation Writing 0xbda53ac Exception at bda53ach и вылетает Автокад. Возможно, макрос vba не адаптирован под новую версию автокада. Как запустить макрос vba в Autocad 2015?
3. Если макрос не адаптирован, то вероятно он не будет работать. Так что обращайтесь к разработчику макроса.
Находите сообщения полезными? Поставьте «НРАВИТСЯ» этим сообщениям! | Do you find the posts helpful? «LIKE» these posts!
На ваш вопрос успешно ответили? Нажмите кнопку » УТВЕРДИТЬ РЕШЕНИЕ » | Have your question been answered successfully? Click «ACCEPT SOLUTION» button.
Alexander Rivilis / Александр Ривилис
Programmer & Teacher & Helper / Программист — Учитель — Помощник
Facebook | Twitter | LinkedIn
Источник
Приложение AutoCAD VBA и особенности работы с ним
Visual Basic for Applications (VBA) — это язык программирования, встроенный во многие приложения, включая офисные программы, САПР, графические редакторы и многие другие. VBA является упрощенной версией языка Visual Basic, имеет схожий с ним синтаксис. Среда программирования VBA обычно встроена в саму программу, поэтому пользователь может сразу начинать писать программы или загружать готовые приложения для работы.
При разработке языка VBA его авторы ориентировались на обычных пользователей, а не на профессиональных программистов, поэтому создавать программы на VBA достаточно просто и быстро.
Из преимуществ языка VBA можно отметить легкость его освоения и простоту использования, универсальность (изучив VBA для AutoCAD пользователь без труда изучит, например, VBA для Microsoft Word или Excel). Главный недостаток языка VBA – проблемы с обратной совместимостью разных версий.
В AutoCAD также есть встроенная поддержка языка VBA, для этого служит отдельный модуль AutoCAD VBA Enabler. С помощью программ на VBA можно обращаться ко всем объектам AutoCAD, примитивам чертежа, общаться между AutoCAD и сторонними приложениями и многое другое. Другими словами, с помощью языка VBA можно создавать программы любой сложности, которые позволят расширить функциональность системы, автоматизировать рутинные операции и многое другое.
Важным отличием VBA для AutoCAD от VBA для других программ является то, что в нем программы хранятся не внутри файлов, а во внешних файлах с расширением DVB.
В последних версиях AutoCAD модуль VBA Enabler не входит в дистрибутив и не устанавливается вместе с самим AutoCAD. Чтобы получить возможность работать с VBA в AutoCAD, вам необходимо скачать и установить AutoCAD VBA Enabler со специальной страницы в интернете
Важно то, что при выборе модуля VBA Enabler нужно обратить внимание на версию AutoCAD и его разрядность. Например, модуль VBA для AutoCAD 2018 32-x не будет работать в среде AutoCAD 2018 64-x.
После скачивания, распаковки и установки модуля AutoCAD VBA Enabler в программе AutoCAD появится возможность работать с приложениями на языке VBA.
Окно редактора VBA (VBA IDE) запускается командой VBAIDE.
Оно стандартное для языка VBA и ничем не отличается от VBA в других программах.
Обратите внимание, что двоичный формат файлов проектов VBA в AutoCAD не совместим с форматом проектов Visual Basic. Однако, в VBA для AutoCAD можно импортировать формы, модули и классы, хранящиеся в файлах форматов FRM, BAS и CLS соответственно.
Список команд, предназначенных для работы с программами VBA:
- VBALOAD служит для загрузки проекта VBA
- VBAUNLOAD выгружает проект из AutoCAD
- VBARUN служит для запуска макроса из командной строки
- VBAIDE открывает окно редактора VBA, в котором можно писать, запускать и отлаживать программы
- VBAMAN открывает менеджер VBA
- VBASTMT выполняет команду VBA в командной строке.
Источник
Не работает VBA в Civil 3d 2013
16.12.2012, 07:40
16.12.2012, 10:01
20.12.2012, 11:08
Civil 2013 имеет еще много косяков. Я бы подождал его использовать. Протестировал в одном проекте — то поверхность ни с того ни с сего перекорежит, то при очередном сохранении выскакивает сообщение, что в файле ошибка и нужно использовать команду «Восстан». Добило то, что при печати во время указания рамки если подвигать/попридвигать экран пишет «Печать невозможна, файл занят другим процессом» (или что-то навроде того).
И еще пересохранить в старой версии файл с поверхностями не удастся — только как прокси-объект.
Короче лучше подождать SP1
20.12.2012, 12:19
| Добило то, что при печати во время указания рамки если подвигать/попридвигать экран пишет «Печать невозможна, файл занят другим процессом» (или что-то навроде того). |
20.12.2012, 17:21
От VBA конечно отклонился, извиняюсь. Имел в виду, что Civil 2013 все может не работать из-за его недороботок.
Цитата:
Сообщение от AlexeySh
Короче лучше подождать SP1
Что его ждать он уже в раздаче.
Чистую систему месяц назад ставил, а SP1 через неделю вышел — невезуха
А у меня нажатие Enter не помогало. Тогда вопрос не по теме: В SP1 косяк с рамкой пропал?
Не дождался, поставил и посмотрел — косяк не пропал. Вывод мой такой — недоработали они 2013 (хотя и приятные вещички появились). Скорее всего и с VBA тоже косяк.
Сейчас нет времени устанавливать, переустанавливать. много срочной работы. На выходных обязательно займусь и отпишусь что получилось. Мне кажется, не хватает чего-то в системе, хотя и SP1 может быть виноват. А пока буду ждать Ваших ответов. Может кто сталкивался с похожей проблемой?
Offtop: У Autodesk, по моему, с конца 2008 г. пошло все как-то не так. Чтобы остаться среди ведущих они вынуждены были глубже внедряться в ГИС, да и в свои решения внедрять много нового из параметрического моделирования и графической обработки. Только делают они это в основном собственными силами вместо привлечения сторонних фирм и интеграции их решений как модулей (например Bentley). Само математическое ядро развивать некогда, поэтому недостающий функционал «навешивают сбоку» и ошибки порой также исправляют. Не удивительно, ведь за пару лет не наберешь достаточное для данных задач количество программистов и чтобы они еще смогли совместно работать. Я думаю в ближайшее время не стоит от Autodesk ждать «чудо».
Всех с наступившим Новым Годом, удачи и отличного отдыха!
Как и обещал, все попробовал. Извините за длительное ожидание, праздники, сами понимаете.
Источник
AutoCAD
Автор:
Проблема
Решение
Из-за появления вредоносных приложений, использующих AutoLISP® и VBA, в пакет обновления 1 для AutoCAD® 2013 включены элементы управления для нескольких новых мер безопасности. Аналогичные пакеты обновления будут выпущены для вертикальных приложений на основе AutoCAD.
Эти новые элементы управления касаются следующих продуктов с установленным пакетом обновления 1:
- AutoCAD 2013
- AutoCAD® 2013 for Mac®
- Вертикальные приложения на основе AutoCAD 2013
AutoCAD LT® не работает с приложениями AutoLISP и VBA и не требует этих мер безопасности.
Что делают новые элементы управления?
Новые элементы управления предоставляют указанные ниже меры безопасности.
- Минимизация вероятности загрузки и запуска недопустимых или вредоносных приложений AutoLISP и VBA благодаря определению местоположения папки, из которой эти приложения загружаются автоматически (системная переменная AUTOLOADPATH).
- Ограничение влияния вредоносных приложений AutoLISP и VBA с помощью отключения автозагрузки таких приложений по умолчанию (системная переменная AUTOLOAD).
- Упрощение процесса очистки благодаря полному отключению AutoLISP при запуске (запуск с параметром /nolisp).
Управление автоматической загрузкой через указание расположения папки
Системная переменная AUTOLOADPATH управляет папками, из которых AutoCAD автоматически загружает следующие файлы AutoLISP и VBA:
Значением по умолчанию для переменной AUTOLOADPATH является пустая строка («») или точка (.). Если задано одно из этих значений, автоматическая загрузка повторяет поведение из более ранних версий. Файлы из списка автоматически загружаются без ограничений в следующем порядке:
- Папка запуска AutoCAD
- Папка текущего чертежа
- Папки в пути поиска вспомогательных файлов AutoCAD
Не рекомендуется устанавливать этот параметр по умолчанию, поскольку вредоносные приложения могут предполагать наличие перечисленных выше папок.
Для минимизации возможности загрузки вредоносных приложений всегда задавайте для системной переменной AUTOLOADPATH значение уникальной папки, в которой находятся разрешенные приложения.
Если указывается несколько папок, используйте точку с запятой в качестве разделителя. Значение переменной AUTOLOADPATH сохраняется в каждом именованном профиле.
Примечание. Для внесения изменений в acad.dvb удалите исходную программу AutoCAD 2013 VBA Enabler и скачайте и установите последнюю версию модуля AutoCAD 2013 VBA, обновленного с учетом изменений, внесенных в пакет обновления 1 для AutoCAD 2013.
Управление автоматической загрузкой приложений AutoLISP и VBA
Для управления автоматической загрузкой приложений AutoLISP и acad.dvb при запуске используйте системную переменную AUTOLOAD:
- Если для AUTOLOAD задано значение 0, автоматическая загрузка ранее указанных файлов AutoLISP и acad.dvb не происходит, что удобно при отладке.
- Если для AUTOLOAD задано значение 1, процесс автозагрузки восстанавливается и зависит от значения системной переменной AUTOLOADPATH.
Отключение загрузки всех приложений AutoLISP
Чтобы предотвратить загрузку любых приложений AutoLISP, используйте переключатель запуска /nolisp для отключения AutoLISP в текущем сеансе AutoCAD, включая все файлы LSP, FAS и VLX.
Если система уже подверглась действию вредоносного приложения, этот параметр позволяет выполнять отладку и очистить установку и все затронутые файлы.
Доступная только для чтения системная переменная LISPENABLED показывает, включен ли AutoLISP в текущем сеансе AutoCAD. Если LISPENABLED имеет значение 0, AutoLISP был отключен переключателем запуска /nolisp.
Примечание. Отключение AutoLISP также предотвращает работу Express Tools и некоторых инструментов команд AutoCAD. Использовать эту возможность можно только в крайних случаях.
Более подробную информацию об использовании переключателей запуска для решения проблемы см. в статье Параметры запуска AutoCAD.
Изменение процесса автозагрузки acad2013.lsp и acad2013doc.lsp
Файлы acad2013.lsp и acad2013doc.lsp теперь будут загружаться только из их папок установки по умолчанию:
Изменения в диалоговом окне «Параметры»
При установке значения 0 для переменной AUTOLOAD или LISPENABLED параметр «Загружать acad.lsp с каждым чертежом» на вкладке «Система» (соответствует системной переменной ACADLSPASDOC) становится недоступным.
Более подробную информацию об этих элементах управления см. в ознакомительных сведениях по AutoCAD 2013 с пакетом обновления 1.
Рекомендуемый ход выполнения установки и восстановления
Для наилучшей защиты от вредоносных приложений AutoLISP и VBA задайте переменную AUTOLOADPATH для уникальной папки и установите значение 1 для параметра AUTOLOAD.
Если вредоносное приложение, выполняемое при запуске, уже внедрилось в программный продукт, выполните приведенные ниже действия.
- Запустите программный продукт на основе AutoCAD с помощью переключателя /nolisp.
- Найдите и удалите все вредоносные коды.
- Восстановите все поврежденные файлы.
- Задайте уникальную папку для переменной AUTOLOADPATH и установите значение 1 для AUTOLOAD.
После выполнения этих действий можно удалить переключатель запуска /nolisp из свойств значка программы на рабочем столе и возобновить работу приложения на основе AutoCAD.
Примечание. Чтобы использовать последние обновления и функции безопасности, пользователям рекомендуется выполнить обновление до последней версии программы.
Источник