Форум пользователей ПО АСКОН

Профессиональные вопросы => Программирование приложений => Тема начата: Lemieux от 16.08.24, 14:52:52

Название: Получение версии КОМПАС
Отправлено: Lemieux от 16.08.24, 14:52:52
Всех приветствую.
Как в API получить версию КОМПАС?  8-)
Название: Re: Получение версии КОМПАС
Отправлено: lavgirb от 16.08.24, 15:42:09
Цитата: Lemieux от 16.08.24, 14:52:52Всех приветствую.
Как в API получить версию КОМПАС?  8-)
GetSystemVersion
Название: Re: Получение версии КОМПАС
Отправлено: Михаил88 от 16.08.24, 15:49:13
application_name = application.ApplicationName(True)
Название: Re: Получение версии КОМПАС
Отправлено: Lemieux от 16.08.24, 16:05:27
Цитата: Михаил88 от 16.08.24, 15:49:13application_name = application.ApplicationName(True)
Спасибо, архитекторы API КОМПАС как всегда. Мне интересно, это они как-то странно думают или я.
Название: Re: Получение версии КОМПАС
Отправлено: feron от 17.08.24, 21:16:29
Цитата: Lemieux от 16.08.24, 14:52:52Как в API получить версию КОМПАС?  8-)

Если вы пишите приложение для пользователей - тут нужен комплексный подход.. тк ввиду того что пользователь не знает проблем совместимости и установит несколько версий К. Чекнуть пути будет не лишним. Понять логику взаимодействия с не зарегистрированными (предыдущими установками) К. Ну и чекнуть порты тоже будет не лишним. Т.к. конечная версия установки и запущенная версия мб не одно и тоже.
Название: Re: Получение версии КОМПАС
Отправлено: Golovanev от 18.08.24, 01:28:50
Цитата: Lemieux от 16.08.24, 16:05:27Спасибо, архитекторы API КОМПАС как всегда. Мне интересно, это они как-то странно думают или я.

При чем здесь Api Компас? Странно тут думает Михаил88.... Правильный ответ GetSystemVersion.
Название: Re: Получение версии КОМПАС
Отправлено: feron от 18.08.24, 01:40:38
Цитата: Golovanev от 18.08.24, 01:28:50GetSystemVersion

"По канонам удобства пользователей" -> к нему надо "прийти"
на данный момент я различаю 3 уровня подхода к нему...
Название: Re: Получение версии КОМПАС
Отправлено: Golovanev от 18.08.24, 08:49:40
В Delphi

Uses
   Libtool;

var
  iMajor, iMinor, iRelease, iBuild : Integer;
begin

  ksGetSystemVersion( iMajor, iMinor, iRelease, iBuild);

end;
Название: Re: Получение версии КОМПАС
Отправлено: UU от 18.08.24, 13:20:18
Цитата: Golovanev от 18.08.24, 08:49:40В Delphi

Uses
   Libtool;

var
  iMajor, iMinor, iRelease, iBuild : Integer;
begin

  ksGetSystemVersion( iMajor, iMinor, iRelease, iBuild);

end;

Используется API экспортных функций, так быстрее.
Название: Re: Получение версии КОМПАС
Отправлено: Lemieux от 19.08.24, 08:06:16
Экспортные функции только в C++? Если нет, то как использовать в C#?
Название: Re: Получение версии КОМПАС
Отправлено: Lemieux от 19.08.24, 08:12:16
Цитата: Golovanev от 18.08.24, 01:28:50При чем здесь Api Компас? Странно тут думает Михаил88.... Правильный ответ GetSystemVersion.
Такое свойство существует? - Существует. Зачем его сделали и дали такое имя?
Название: Re: Получение версии КОМПАС
Отправлено: UU от 20.08.24, 08:48:04
Цитата: Lemieux от 19.08.24, 08:06:16Экспортные функции только в C++? Если нет, то как использовать в C#?
Экспортные функции для C++ описаны в модуле LIBTOOL.H, для Delphi в модуле LibTool.pas, используется kAPI2D5.dll из папки Bin Компас-3D.
Если Вы можете подключить kAPI2D5.dll из своего приложения, то напишите свой модуль для взаимодействия для тех функций которые Вам нужны.
Название: Re: Получение версии КОМПАС
Отправлено: Lemieux от 20.08.24, 09:35:59
Цитата: UU от 20.08.24, 08:48:04Экспортные функции для C++ описаны в модуле LIBTOOL.H, для Delphi в модуле LibTool.pas, используется kAPI2D5.dll из папки Bin Компас-3D.
Если Вы можете подключить kAPI2D5.dll из своего приложения, то напишите свой модуль для взаимодействия для тех функций которые Вам нужны.
Прикольно. Что-то я в хелпе не видел этой информации. Короче это просто глобальные функции. Всё понятно. kAPI2D5.dll в проект C# не подключается, из kAPI2D5COM.tlb обёртка делается, но там пустота.
Название: Re: Получение версии КОМПАС
Отправлено: p3452 от 20.08.24, 15:33:52
Цитата: Lemieux от 20.08.24, 09:35:59Всё понятно. kAPI2D5.dll в проект C# не подключается
А зачем ЕЁ подключать (Вам охота возиться с маршалингом?), когда все эти функции доступны непосредственно от KompasObject...
Название: Re: Получение версии КОМПАС
Отправлено: Lemieux от 20.08.24, 16:10:19
Цитата: p3452 от 20.08.24, 15:33:52А зачем ЕЁ подключать (Вам охота возиться с маршалингом?), когда все эти функции доступны непосредственно от KompasObject...

Так у нас тут дискуссия про экспортные функции (интересно, куда их экспортируют).
Название: Re: Получение версии КОМПАС
Отправлено: Vi2 от 21.08.24, 22:44:25
Цитата: UU от 18.08.24, 13:20:18Используется API экспортных функций, так быстрее.
С чего ты решил, что быстрее? Это такой же клиент Компаса, как и любой другой. Эти ДЛЛ грузятся в тело твоего ЕХЕ и обращаются к Компасу обычным образом. Небольшое послабление делается для ИНПРОС серверов, которые грузятся в сам Компас, так для них также нет маршаллинга, как и для ДЛЛ с экспортными функциями.
Название: Re: Получение версии КОМПАС
Отправлено: UU от 22.08.24, 02:17:48
Цитата: Vi2 от 21.08.24, 22:44:25С чего ты решил, что быстрее? Это такой же клиент Компаса, как и любой другой. Эти ДЛЛ грузятся в тело твоего ЕХЕ и обращаются к Компасу обычным образом. Небольшое послабление делается для ИНПРОС серверов, которые грузятся в сам Компас, так для них также нет маршаллинга, как и для ДЛЛ с экспортными функциями.
А с чего ты решил, что я exe пишу?
Название: Re: Получение версии КОМПАС
Отправлено: Vi2 от 22.08.24, 05:48:07
Цитата: UU от 22.08.24, 02:17:48А с чего ты решил, что я exe пишу?
А без разницы, что ты пишешь - инпрос библиотека не даст выигрыша в скорости, а лишь в возможном удобстве. Например, выполнением некоторых необходимых действий, как говорится, "за сценой". На это и стоит обращать внимание, а не на скорость.
Название: Re: Получение версии КОМПАС
Отправлено: Starik от 22.08.24, 09:31:42
Цитата: UU от 22.08.24, 02:17:48А с чего ты решил, что я exe пишу?
Уважаемый UU Делаю Вам ЗАМЕЧАНИЕ
Напоминаю правила форума:
Цитировать3.4. В нашем Форуме принято обращение между участниками на «Вы». Обращайтесь к участнику на «ты» только если вы знакомы с ним лично и используете такое обращение либо если он явно дал согласие на такое обращение к нему.
Название: Re: Получение версии КОМПАС
Отправлено: UU от 22.08.24, 09:40:49
Цитата: Starik от 22.08.24, 09:31:42Уважаемый UU Делаю Вам ЗАМЕЧАНИЕ
Напоминаю правила форума:
Вы серьёзно?
Мне тут, тыкают, я должен на Вы называть?
Цитата: Vi2 от 21.08.24, 22:44:25С чего ты решил, что быстрее? Это такой же клиент Компаса, как и любой другой. Эти ДЛЛ грузятся в тело твоего ЕХЕ и обращаются к Компасу обычным образом. Небольшое послабление делается для ИНПРОС серверов, которые грузятся в сам Компас, так для них также нет маршаллинга, как и для ДЛЛ с экспортными функциями.
Название: Re: Получение версии КОМПАС
Отправлено: СВ от 22.08.24, 09:59:02
(Подумаешь! Меня вот забанили НА МЕСЯЦ (справедливо!), а другому собеседнику не то что наказание, даже спасибо сказали. А я - ни слова! ЗАКОН ЕСТЬ ЗАКОН!
Так что, любезный УУ, живите и радуйтесь, пока ... Одним словом: нарушение закона другим - не повод самому нарушать закон. Правильно я говорю, Алексей Павлович?)
Название: Re: Получение версии КОМПАС
Отправлено: Lemieux от 22.08.24, 10:02:37
Интересные темы затрагиваются, а тут банхамеры летают  :w:
Сделаем КОМПАС великим снова!
Название: Re: Получение версии КОМПАС
Отправлено: Starik от 22.08.24, 10:46:05
Цитата: UU от 22.08.24, 09:40:49Вы серьёзно?
Мне тут, тыкают, я должен на Вы называть?
Извиняюсь, проглядел :shu:

Цитата: Vi2 от 21.08.24, 22:44:25С чего ты решил, что быстрее? 

Уважаемому Vi2 так же объявляю ЗАМЕЧАНИЕ!!!


Обсуждение замечаний ПРЕКРАЩАЕМ и возвращаемся к теме :um:  :um:  :um:  :um:
Название: Re: Получение версии КОМПАС
Отправлено: Lemieux от 22.08.24, 13:58:37
Цитата: Starik от 22.08.24, 10:46:05Обсуждение замечаний ПРЕКРАЩАЕМ и возвращаемся к теме :um:  :um:  :um:  :um:
Знаете, на форуме нужно прикрутить кнопку "Решение", чтобы выделять темы с решением и подсвечивать сообщение.
Название: Re: Получение версии КОМПАС
Отправлено: Vi2 от 22.08.24, 17:18:10
Цитата: Starik от 22.08.24, 10:46:05Уважаемому Vi2 так же объявляю ЗАМЕЧАНИЕ!!!
По правде, не знал. Исправлюсь.
Название: Re: Получение версии КОМПАС
Отправлено: UU от 22.08.24, 17:32:34
Цитата: Vi2 от 22.08.24, 17:18:10По правде, не знал. Исправлюсь.
А я знал и терпеть такого не буду.
Будем считать, что инцидент - исчерпан.
 :fr:
Название: Re: Получение версии КОМПАС
Отправлено: Петрович-47 от 23.08.24, 09:10:04
Vi2, Вам сюда...
2024_08_23.JPG
Название: Re: Получение версии КОМПАС
Отправлено: Михаил88 от 27.08.24, 19:18:21
изображение_2024-08-27_211545524.png

C К22 и в API7 появился метод GetSystemVersion.
Название: Re: Получение версии КОМПАС
Отправлено: lavgirb от 28.08.24, 12:26:22
Цитата: Михаил88 от 27.08.24, 19:18:21изображение_2024-08-27_211545524.png

C К22 и в API7 появился метод GetSystemVersion.

До кучи

v7.jpg

v5.jpg