• Добро пожаловать на Форум пользователей ПО АСКОН. Пожалуйста, авторизуйтесь.
 

Уважаемые пользователи,

Хотим проинформировать вас о режиме работы регистрации на нашем сайте.

Зарегистрироваться возможно в рабочие дни, с 8:00 до 20:00 (мск).

Если у вас возникнут вопросы или потребуется дополнительная информация, не стесняйтесь обращаться к нашей службе поддержки. Вы можете связаться с нами по указанным контактным данным на нашем сайте.

Благодарим вас за понимание и сотрудничество. Мы ценим ваше терпение и стремимся предоставить вам лучший опыт использования нашего сервиса.

С уважением,
Команда Ascon

Компас 10 и Delphi 7

Автор Dmitry Saveliev, 19.08.08, 15:14:03

« назад - далее »

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

Dmitry Saveliev

Здравствуйте!

Скажу сразу, что я никогда не пользовался API Компаса, но сейчас возникла нужда немного покодить в эту сторону.
Пожалуйста, объясните, что нужно сделать, чтобы для начала посмотреть хотя бы работу примеров в папке
SDK. Хотя бы для начала простой пример step1. Просто не удается скомпилировать.
Какие модули куда перенести, что где подключить - подскажите новичку.

Заранее большое вам спасибо

oit

На Delphi7 чтобы компилилось:
зайди в Tools -> environment options
на вкладке Library в Library path укажи путь на ..\SDK\Include
скомпилинная библиотека будет иметь расширение rtw

//--------------------------------------------------------------------------------
Посмотрите методичку вот здесь  http://edu.ascon.ru/download/methods/rtw.zip
//--------------------------------------------------------------------------------

Dmitry Saveliev

С этим я разобрался, папку Include прописал.

Беру первый пример (step1), пытаюсь компилировать, начинается ругань на модуль LibTools.
Вроде поправил (там одна лишняя ";" и несколько функций не объявлено), но теперь при
попытке компилить вылетает в дебаггер. Что делать???


YuKa

21.08.08, 04:38:22 #3 Последнее редактирование: 21.08.08, 17:14:09 от YuKa
Таже самая проблема с LibTools.
До V10 пробовал только связку КОМПАС V7 + Delphi 7. Все прекрасно компилилось.

Ошибки примера из http://edu.ascon.ru/download/methods/rtw.zip :
Цитировать[Error] LibTool.pas(6928): Identifier expected but ')' found
[Error] LibTool.pas(6900): Unsatisfied forward or external declaration: 'ksGetSpcPerformanceName'
[Error] LibTool.pas(6910): Unsatisfied forward or external declaration: 'ksGetSpcPerformanceNameW'
[Error] LibTool.pas(6919): Unsatisfied forward or external declaration: 'ksSetSpcPerformanceName'
[Error] LibTool.pas(6928): Unsatisfied forward or external declaration: 'ksSetSpcPerformanceNameW'
[Fatal Error] ksAuto.pas(12): Could not compile used unit 'LibTool.pas'

oit

под v9 на Delphi7 все отлично компилось и никаких ошибок не возникло

Dmitry Saveliev

Господа, и что же делать???

Пользовать Компас 9 и Delphi 7? Или все таки можно как-то и с 10 версией разобраться?

YuKa

Пока "выкрутился" так.
Закоментировал описания четырех функций в LibTool.pas и все нАчало работать:

ksGetSpcPerformanceName
ksGetSpcPerformanceNameW
ksSetSpcPerformanceName
ksSetSpcPerformanceNameW

PON

А что думают по этому поводу разработчики?

Andreych

Я тоже использую Компас 10 и Delphi 7. У меня никаких ошибок при компиляции примеров не возникает, скомпилированные библиотеки работают. При этом я в LibTools и в других библиотеках ничего не правил, все само работает.

Sergio_80

 Вот и решил попробывать вспомнить связку Delphy 7 и Компас. Правда раньше я уже связывал Компас6. Но  с Компасом 10 все оказалось не просто - вернее пока еще никак... Возможно у кого-то было что-то похоже . Ситуация такая: Откомпилировав пример запускаю F9 и выкидает окно CPU и дальше ничегшо не происходит , когда нажимаю  повторно F9 выкидает ошибку . Когда в меню Tools/ Debugger Option / General / Insector Defaults убираю галочку Show inherited - Компас 10 запускается но ничего не происходит.... Перепробовал на всех примерах из папки - никакой реакции. Может кто-то подскажет что- там не так. И может есть где-то подробное описание Компас-Мастер ... 

Andreych

Так это похоже у всех точно такая ситуация возникает, если жать F9 и запускать программу прямо из Delphi. А если скомпилировать rtw библиотеку, и добавив ее в Компасе, запускать оттуда, то все будет ок.

Sergio_80

Цитата: Andreych от 27.10.08, 07:02:37
Так это похоже у всех точно такая ситуация возникает, если жать F9 и запускать программу прямо из Delphi. А если скомпилировать rtw библиотеку, и добавив ее в Компасе, запускать оттуда, то все будет ок.

  Спасибо за ответ - хоть что-то проясняется

uno-84

Если кого-то интересутет ответ по этой теме. Я исправил эту ошибку след. образом,
просто обьявить эти функциии в APPTOOL:

function ksGetSpcPerformanceName; external APPTOOL5 Name 'ksGetSpcPerformanceName';

function ksGetSpcPerformanceNameW; external APPTOOL5 Name 'ksGetSpcPerformanceNameW';

function ksSetSpcPerformanceName; external APPTOOL5 Name 'ksSetSpcPerformanceName';

function ksSetSpcPerformanceNameW; external APPTOOL5 Name 'ksSetSpcPerformanceNameW';

CAD_tester

Уважаемые! не могли бы вы обновить эту ссылочку: http://edu.ascon.ru/download/methods/rtw.zip или указать новое место этого файла!


CAD_tester

Спасибо Алексей!
Отличная методичка, с ней гораздо проще разбираться в основах разработки библиотек!
Молодец всё таки доцент Троицкий написавший эту штуку!!!

Троицкий

Цитата: CAD_tester от 13.10.09, 09:43:15
Спасибо Алексей!
Отличная методичка, с ней гораздо проще разбираться в основах разработки библиотек!
Молодец всё таки доцент Троицкий написавший эту штуку!!!
Спасибо за добрые слова о моем скромном труде!

Aleksei

Цитата: CAD_tester от 13.10.09, 09:43:15
Отличная методичка, с ней гораздо проще разбираться в основах разработки библиотек!
Молодец всё таки доцент Троицкий написавший эту штуку!!!

Присоединяюсь - тоже учился по ней. :w:

sn0wflake

Цитата: Aleksei от 13.10.09, 22:10:05
Цитата: CAD_tester от 13.10.09, 09:43:15
Отличная методичка, с ней гораздо проще разбираться в основах разработки библиотек!
Молодец всё таки доцент Троицкий написавший эту штуку!!!

Присоединяюсь - тоже учился по ней. :w:

тоже учусь по ней :)