ошибка подключения приложения apm fem
Ошибка подключения библиотек
PS для модератора : не знаю с чем эта тема больше связана, с компасом или с ОС, поэтому не уверен в какой раздел ее включить.
По поводу библиотек и их подключения
Добрый день, нужна помощь в подключении библиотеки. Я пишу свою библиотечку, получаю 2 файла.
Подскажите библиотеку для подключения всех библиотек
есть такая библиотека которая подключает сразу все библиотеки?
Написать код для решения уравнений без подключения лишних библиотек С++
Надо написать программы решения.
Артур Радикович, попробуйте разблокировать отломанную библиотеку которая лежит в папке установленного компаса
Добавлено через 42 секунды
TRAP_WORLD, да 64х
была похожая ошибка когда пытался запустить 32 битную программу в 64 системе
там все версии и обновления к ним
а остальное уже с других источников
ReactJS. Webpack. Как проверить версию браузера до подключения библиотек к проекту?
Всем привет!! Собираю проект Web Psck-ом, подключаю модуль React. На низких версиях типа Opera.
Ошибка библиотек?
Здравствуйте,помогите пожалуйста разобраться,я взял код который был написана VS 2008 скопировал в.
Компас ошибка подключения приложения
Для увеличения стандартных возможностей приложения Компас-3D используются специальные библиотеки, которые создаются для усовершенствованного проектирования определенной задачи. В приложении Компас можно подключать вспомогательные библиотеки, для этого понадобится:
— Персональный компьютер(в нашем интернет-магазине скидки на компьютеры) или ноутбук;
Инструкция
Опция «Менеджер библиотек»
Видео: КОМПАС-3D. Урок подключение библиотек
КОМПАС-3D — система трехмерного проектирования, ставшая стандартом для тысяч предприятий, благодаря сочетанию простоты освоения и легкости работы с мощными функциональными возможностями твердотельного и поверхностного моделирования. Ключевой особенностью продукта является использование собственного математического ядра С3D и параметрических технологий, разработанных специалистами АСКОН. КОМПАС-3D обеспечивает поддержку наиболее распространенных форматов 3D-моделей (STEP, ACIS, IGES, DWG, DXF), что позволяет организовывать эффективный обмен данными со смежными организациями и заказчиками, использующими любые CAD / CAM / CAE-системы в работе.
Базовые возможности системы включают в себя функционал, который позволяет спроектировать изделие любой степени сложности в 3D, а потом оформить на это изделие комплект документации, необходимый для его изготовления в соответствии с действующими стандартами (ГОСТ, СТП и др.):
По умолчанию КОМПАС-3D поддерживает экспорт / импорт наиболее популярных форматов моделей, за счёт чего обеспечивается интеграция с различными CAD / CAM / CAE пакетами. Базовая функциональность продукта легко расширяется за счёт различных приложений, дополняющих функционал КОМПАС-3D эффективным инструментарием для решения специализированных инженерных задач. Например, приложения для проектирования трубопроводов, металлоконструкций, различных деталей машин позволяют большую часть действий выполнять автоматически, сокращая общее время разработки проекта в несколько раз. Модульность системы позволяет пользователю самому определить набор необходимых ему приложений, которые обеспечивают только востребованную функциональность.
Основные общие нововведения в Компас-3D 18:
В предыдущих уроках по API КОМПАС (Напоминаем, что в качестве среды используется C++ Builder) Основы и Оформление чертежа мы исходили из того, что КОМПАС не запущен, и запускали его сами методом CreateInstance. Но что если в момент вызова этого метода КОМПАС уже запущен? Тогда будет создан еще один экземпляр данной программы. В принципе ничего страшного, но неаккуратно. Зачем плодить копии программы, когда можно обойтись одним экземпляром?
Сегодня мы поговорим о том, как подключаться к уже запущенному КОМПАС, чтобы не создавать картину, похожую на ту, которая изображена на рисунке ниже.
Запущено несколько экземпляров КОМПАС-3D
Подключение к КОМПАС
Для подключения к программе КОМПАС используется метод ActiveInstance. Ниже приводится пример программы, подключающейся к КОМПАС.
Единственный параметр метода ActiveInstance – строковое наименование интерфейса, к которому мы подключаемся, в кодировке Unicode.
А что будет, если в момент вызова этого метода КОМПАС не запущен? Произойдет ошибка. Причем пользователю будет показано сразу два окна с ругательствами.
Первое окно с ошибкой
Второе окно с ошибкой
Формат этих окон зависит от используемой среды разработки и может отличаться от приведенных выше. Оборачивание вызова метода ActiveInstance в блок try/catch, к сожалению, не решает проблему.
Мы избавляемся только от одного окна с ошибкой. Получается, что вызывать метод ActiveInstance можно только тогда, когда КОМПАС запущен. И здесь мы приходим к главному вопросу: как определить, запущен КОМПАС или нет? Для этого существует несколько методов.
По главному окну
Самый распространенный способ – с помощью функции FindWindow найти главное окно программы. Функция FindWindow ищет окно по его заголовку или по наименованию его оконного класса. К сожалению, она требует точного совпадения строк. Искать по части строки она не умеет.
Заголовок окна мы не можем использовать, так как он включает в себя версию КОМПАС, которая заранее нам неизвестна, и дополнительную информацию, например, наименование открытого документа. Поэтому мы не можем знать наверняка точную строку в заголовке окна. Попробуем по наименованию оконного класса.
Узнать его можно с помощью программы Spy++. На рисунке ниже приведена примерная информация об оконном классе (наименование обведено в красный прямоугольник).
Окно «Свойства окна»
Наименования оконного класса мало того, что не отличаются наглядностью, так еще и различаются в разных версиях КОМПАС. Поэтому поиск по наименованию оконного класса нам также не подходит.
Единственное, на что мы хоть как-то можем положиться, так это на наличие подстроки «КОМПАС-3D» в заголовке главного окна. Но функция FindWindow не умеет искать по подстроке. Единственное, что нам остается, так это перебрать все окна верхнего уровня и проверить, содержит ли заголовок какого-либо из них подстроку «КОМПАС-3D». Ниже приводится исходный код процедуры, осуществляющей эту проверку.
Для перечисления окон используется функция EnumWindows, входящая в состав Windows API. Данная функция подготавливает список окон верхнего уровня и для каждого найденного окна вызывает пользовательскую функцию EnumWindowsProc. В данной функции мы читаем заголовок найденного окна и проверяем, содержит ли он подстроку «КОМПАС-3D». Если содержит, то окно найдено и останавливаем поиск, если нет – переходим к следующему окну. Ниже приводится пример использования данной процедуры.
К сожалению, данный метод очень ненадежен. Дело в том, что в системе могут быть другие окна, содержащие в своем заголовке подстроку «КОМПАС-3D». Пример такого окна приведен на рисунке 4. Это явно не то окно, которое мы хотим найти.
Окно справки
По процессу
Другим вариантом является поиск процесса КОМПАС. У программы КОМПАС исполняемый файл обычно именуется «kompas.exe» (в разных версиях может различаться регистр). Что если вместо окна искать процесс с таким наименованием исполняемого файла? Ниже приводится исходный текст программы, реализующей данный метод.
В данном примере для перечисления процессов используются функции CreateToolhelp32Snapshot, Process32First, Process32Next, входящие в состав Windows API. Для их использования необходимо подключить заголовочный файл tlhelp32.h. Это не единственный способ перечисления процессов, но один из самых простых. Для сравнения строк используется функция strnicmp, которая сравнивает строки без учета регистра символов.
Способ, основанный на поиске процессов, надежнее поиска окна. Он дает значительно меньше ложных срабатываний, но не исключает их. Что если на компьютере пользователя запущена программа с точно таким же наименованием исполняемого файла? Или в последующих версиях КОМПАС исполняемый файл будет называться по-другому? Во всех этих случаях данный метод не работает.
С использованием технологии COM
Все описанные выше методы громоздки и ненадежны. Поэтому их использование нежелательно. Существует более надежный способ проверки факта запуска программы КОМПАС. Он основан на функциях библиотеки ole32.dll, которая входит в состав Windows и реализует технологию COM. Ниже приводится исходный код процедуры, проверяющей с помощью этих функций, запущен ли КОМПАС.
Основную работу выполняет функция GetActiveObject. С ее помощью мы пытаемся подключиться к КОМПАС. Если это удалось, значит, КОМПАС запущен. Функция CLSIDFromProgID используется для конвертирования строкового представления объекта в его CLSID (уникальный 128-битный идентификатор). Ее можно использовать для проверки того, установлен КОМПАС на компьютере пользователя или нет. Ниже приводится пример программы, реализующей такую проверку.
Корректное подключение
Ниже приводится исходный текст программы, реализующей корректное подключение к КОМПАС.
Переменная ObjectName объявлена глобальной, чтобы избежать ее дублирования в разных функциях.
Заключение
В данной статье были рассмотрены различные методы определения того, запущен КОМПАС или нет. Вы можете использовать любой из этих методов или их комбинацию. А может быть, придумаете свой метод. Самым надежным является метод, основанный на функции GetActiveObject.
В конце статьи приведен пример программы, реализующей подключение к КОМПАС с проверкой на его наличие в системе и работу в момент запуска программы.
Сергей Норсеев, автор книги «Разработка приложений под КОМПАС в Delphi».
Компас ошибка подключения приложения
Для увеличения стандартных возможностей приложения Компас-3D используются специальные библиотеки, которые создаются для усовершенствованного проектирования определенной задачи. В приложении Компас можно подключать вспомогательные библиотеки, для этого понадобится:
— Персональный компьютер(в нашем интернет-магазине скидки на компьютеры) или ноутбук;
Инструкция
Опция «Менеджер библиотек»
Видео: КОМПАС-3D. Урок подключение библиотек
КОМПАС-3D — система трехмерного проектирования, ставшая стандартом для тысяч предприятий, благодаря сочетанию простоты освоения и легкости работы с мощными функциональными возможностями твердотельного и поверхностного моделирования. Ключевой особенностью продукта является использование собственного математического ядра С3D и параметрических технологий, разработанных специалистами АСКОН. КОМПАС-3D обеспечивает поддержку наиболее распространенных форматов 3D-моделей (STEP, ACIS, IGES, DWG, DXF), что позволяет организовывать эффективный обмен данными со смежными организациями и заказчиками, использующими любые CAD / CAM / CAE-системы в работе.
Базовые возможности системы включают в себя функционал, который позволяет спроектировать изделие любой степени сложности в 3D, а потом оформить на это изделие комплект документации, необходимый для его изготовления в соответствии с действующими стандартами (ГОСТ, СТП и др.):
По умолчанию КОМПАС-3D поддерживает экспорт / импорт наиболее популярных форматов моделей, за счёт чего обеспечивается интеграция с различными CAD / CAM / CAE пакетами. Базовая функциональность продукта легко расширяется за счёт различных приложений, дополняющих функционал КОМПАС-3D эффективным инструментарием для решения специализированных инженерных задач. Например, приложения для проектирования трубопроводов, металлоконструкций, различных деталей машин позволяют большую часть действий выполнять автоматически, сокращая общее время разработки проекта в несколько раз. Модульность системы позволяет пользователю самому определить набор необходимых ему приложений, которые обеспечивают только востребованную функциональность.
Основные общие нововведения в Компас-3D 18:
В предыдущих уроках по API КОМПАС (Напоминаем, что в качестве среды используется C++ Builder) Основы и Оформление чертежа мы исходили из того, что КОМПАС не запущен, и запускали его сами методом CreateInstance. Но что если в момент вызова этого метода КОМПАС уже запущен? Тогда будет создан еще один экземпляр данной программы. В принципе ничего страшного, но неаккуратно. Зачем плодить копии программы, когда можно обойтись одним экземпляром?
Сегодня мы поговорим о том, как подключаться к уже запущенному КОМПАС, чтобы не создавать картину, похожую на ту, которая изображена на рисунке ниже.
Запущено несколько экземпляров КОМПАС-3D
Подключение к КОМПАС
Для подключения к программе КОМПАС используется метод ActiveInstance. Ниже приводится пример программы, подключающейся к КОМПАС.
Единственный параметр метода ActiveInstance – строковое наименование интерфейса, к которому мы подключаемся, в кодировке Unicode.
А что будет, если в момент вызова этого метода КОМПАС не запущен? Произойдет ошибка. Причем пользователю будет показано сразу два окна с ругательствами.
Первое окно с ошибкой
Второе окно с ошибкой
Формат этих окон зависит от используемой среды разработки и может отличаться от приведенных выше. Оборачивание вызова метода ActiveInstance в блок try/catch, к сожалению, не решает проблему.
Мы избавляемся только от одного окна с ошибкой. Получается, что вызывать метод ActiveInstance можно только тогда, когда КОМПАС запущен. И здесь мы приходим к главному вопросу: как определить, запущен КОМПАС или нет? Для этого существует несколько методов.
По главному окну
Самый распространенный способ – с помощью функции FindWindow найти главное окно программы. Функция FindWindow ищет окно по его заголовку или по наименованию его оконного класса. К сожалению, она требует точного совпадения строк. Искать по части строки она не умеет.
Заголовок окна мы не можем использовать, так как он включает в себя версию КОМПАС, которая заранее нам неизвестна, и дополнительную информацию, например, наименование открытого документа. Поэтому мы не можем знать наверняка точную строку в заголовке окна. Попробуем по наименованию оконного класса.
Узнать его можно с помощью программы Spy++. На рисунке ниже приведена примерная информация об оконном классе (наименование обведено в красный прямоугольник).
Окно «Свойства окна»
Наименования оконного класса мало того, что не отличаются наглядностью, так еще и различаются в разных версиях КОМПАС. Поэтому поиск по наименованию оконного класса нам также не подходит.
Единственное, на что мы хоть как-то можем положиться, так это на наличие подстроки «КОМПАС-3D» в заголовке главного окна. Но функция FindWindow не умеет искать по подстроке. Единственное, что нам остается, так это перебрать все окна верхнего уровня и проверить, содержит ли заголовок какого-либо из них подстроку «КОМПАС-3D». Ниже приводится исходный код процедуры, осуществляющей эту проверку.
Для перечисления окон используется функция EnumWindows, входящая в состав Windows API. Данная функция подготавливает список окон верхнего уровня и для каждого найденного окна вызывает пользовательскую функцию EnumWindowsProc. В данной функции мы читаем заголовок найденного окна и проверяем, содержит ли он подстроку «КОМПАС-3D». Если содержит, то окно найдено и останавливаем поиск, если нет – переходим к следующему окну. Ниже приводится пример использования данной процедуры.
К сожалению, данный метод очень ненадежен. Дело в том, что в системе могут быть другие окна, содержащие в своем заголовке подстроку «КОМПАС-3D». Пример такого окна приведен на рисунке 4. Это явно не то окно, которое мы хотим найти.
Окно справки
По процессу
Другим вариантом является поиск процесса КОМПАС. У программы КОМПАС исполняемый файл обычно именуется «kompas.exe» (в разных версиях может различаться регистр). Что если вместо окна искать процесс с таким наименованием исполняемого файла? Ниже приводится исходный текст программы, реализующей данный метод.
В данном примере для перечисления процессов используются функции CreateToolhelp32Snapshot, Process32First, Process32Next, входящие в состав Windows API. Для их использования необходимо подключить заголовочный файл tlhelp32.h. Это не единственный способ перечисления процессов, но один из самых простых. Для сравнения строк используется функция strnicmp, которая сравнивает строки без учета регистра символов.
Способ, основанный на поиске процессов, надежнее поиска окна. Он дает значительно меньше ложных срабатываний, но не исключает их. Что если на компьютере пользователя запущена программа с точно таким же наименованием исполняемого файла? Или в последующих версиях КОМПАС исполняемый файл будет называться по-другому? Во всех этих случаях данный метод не работает.
С использованием технологии COM
Все описанные выше методы громоздки и ненадежны. Поэтому их использование нежелательно. Существует более надежный способ проверки факта запуска программы КОМПАС. Он основан на функциях библиотеки ole32.dll, которая входит в состав Windows и реализует технологию COM. Ниже приводится исходный код процедуры, проверяющей с помощью этих функций, запущен ли КОМПАС.
Основную работу выполняет функция GetActiveObject. С ее помощью мы пытаемся подключиться к КОМПАС. Если это удалось, значит, КОМПАС запущен. Функция CLSIDFromProgID используется для конвертирования строкового представления объекта в его CLSID (уникальный 128-битный идентификатор). Ее можно использовать для проверки того, установлен КОМПАС на компьютере пользователя или нет. Ниже приводится пример программы, реализующей такую проверку.
Корректное подключение
Ниже приводится исходный текст программы, реализующей корректное подключение к КОМПАС.
Переменная ObjectName объявлена глобальной, чтобы избежать ее дублирования в разных функциях.
Заключение
В данной статье были рассмотрены различные методы определения того, запущен КОМПАС или нет. Вы можете использовать любой из этих методов или их комбинацию. А может быть, придумаете свой метод. Самым надежным является метод, основанный на функции GetActiveObject.
В конце статьи приведен пример программы, реализующей подключение к КОМПАС с проверкой на его наличие в системе и работу в момент запуска программы.
Сергей Норсеев, автор книги «Разработка приложений под КОМПАС в Delphi».
APM FEM
Система прочностного анализа для КОМПАС-3D
APM FEM
Система прочностного анализа для КОМПАС-3D
Приложение APM FEM предназначено для выполнения экспресс-расчетов твердотельных объектов в системе КОМПАС-3D, и визуализации результатов этих расчетов.
В состав APM FEM входят инструменты подготовки деталей и сборок к расчёту, задания граничных условий и нагрузок, а также встроенные генераторы конечно-элементной сетки (как с постоянным, так и с переменным шагом) и постпроцессор. Этот функциональный набор позволяет смоделировать твердотельный объект и комплексно проанализировать поведение расчётной модели при различных воздействиях с точки зрения статики, собственных частот, устойчивости и теплового нагружения.
Для создания конечно-элементного представления объекта в APM FEM предусмотрена функция генерации КЭ-сетки, при вызове которой происходит соответствующее разбиение объекта с заданным шагом. Если созданная расчетная модель имеет сложные неравномерные геометрические переходы, то может быть проведено так называемое адаптивное разбиение. Для того чтобы результат процесса был более качественным, генератор КЭ-сетки автоматически (с учетом заданного пользователем максимального коэффициента сгущения) варьирует величину шага разбиения.
Прочностной анализ модуля APM FEM позволяет решать линейные задачи:
Динамический анализ позволяет определять частоты и формы собственных колебаний, в том числе для моделей с предварительным нагружением.
Результатами расчетов являются:
Ошибка подключения приложения apm fem
Топологическая оптимизация позволяет создать модель с заданными эксплуатационными характеристиками, уменьшая материалоемкость детали или целой конструкции.
В качестве критерия оптимальности могут выступать следующие параметры модели:
Важный этап оптимизации — выбор области проектирования, в которой может располагаться материал. Для получения лучшего результата нужно давать заведомо больший объем, учитывая конструктивные и технологические ограничения.
Последовательность действий соответствует обычному статическому расчету в APM FEM. Задаются нагрузки, закрепления, генерируется конечно-элементная сетка. Отличие — в задании параметров задачи оптимизации.
Последовательность формирования задачи оптимизации:
Итог оптимизации — распределение объемных долей на карте результатов. По распределению можно сформировать изоповерхность, соответствующую определенному значению объемной доли. Далее эту поверхность можно сгладить и преобразовать в твердое тело с помощью инструментов Свободной формы.
Свободная форма — поверхность многогранника, скругленного по вершинам и ребрам. Свободная форма создается по полигональной сетке, которая может видоизменяться, например, в результате «перетаскивания» вершин, граней или ребер и других действий.
Для полученного твердого тела необходимо еще раз произвести расчет на прочность, чтобы убедиться в работоспособности объекта и соответствии заданным критериям.
Требует для работы: КОМПАС-3D, APM FEM
Производитель: ООО «АСКОН-Системы проектирования», НТЦ «АПМ»
* Не является публичной офертой. Для уточнения стоимости, сроков и условий приобретения программного обеспечения обращайтесь в офисы АСКОН, партнерам АСКОН или оформите приобретение через Интернет-магазины.