Ошибка в примере Gayka1

Автор A.n.d.r.e.w, 07.10.23, 18:30:13

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

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

A.n.d.r.e.w

Привет. Компилирую стандартную библиотеку из примеров "Gayka1"
та что с панелью свойств. хочу по образу и подобию запилить своё.
Библиотека подключается и работает но внутри функции  PlacementEx из kAPI2D5.dll
происходит ошибка, не может оно что-то там найти, если нажать "продолжить", то
продолжает работать вроде как надо, никаких проблем не ощущается.

можно как-то исправить или перехватить исключение?
я не настолько продвинутый программист  :(
Windows11, Kompas21

p3452

В "Примерах", не мало ошибок...
Ваш случай, стал бы более понятен, если бы кликнули по кнопке "Сведения" и привели скриншот...

Пока же ясно только то, что, в тексте программы есть функции из не подключенной библиотеки ("модуля").

A.n.d.r.e.w

В сведениях достаточно большой список.
Вот во вложении.

p3452

#3
Программа пытается создавать классы по их GUID - какой-то из этих классов не зарегистрирован в системе...

Этот пример не правился АСКОН-овцами со времен 16 версии Компаса !!!

p/s: Возможно это OCX класс HatchCtrl...
+ Благодарностей: 1

A.n.d.r.e.w

ну принцип я понял. ну я же не смогу переписать kAPI2D5.dll  которая вызывает несуществующие библиотеки. В заголовке сообщения об исключении читается .net может надо установить какой-нить старый пакет или еще чё?
Если нельзя обойти эту проблему тогда нельзя использовать функцию PlacementEx? Хотя когда я компилил в С++Builder немного другую библу Gayka которая с модальной формой параметров. там  тоже используется PlacementEx и вроде всё работало без проблем.

A.n.d.r.e.w

Цитата: p3452 от 08.10.23, 15:31:14АСКОН-овцами
Не стал бы я называть специалистов АСКОН овцами ;) просто им не до этого. То что примеры в sdk практически не менялись больше 10 лет это известно, просто тяжело исправлять непонятные глюки. Неужели только у меня такое?

Nipal

Не пробовали отладчиком воспользоваться?

A.n.d.r.e.w

Цитата: Nipal от 09.10.23, 01:04:24Не пробовали отладчиком воспользоваться?
Вы имеете ввиду отладчик делфи или jit который рекомендуется в сообщении?
Дебаггер делфи даже не останавливается на этом исключении. Исключение происходит не в коде гайки, а в подключаемых библиотеках. В этом и проблема.
Заголовок темы я такой написал чтобы привлечь внимание.

Nipal

Исключению предшествует код, можно посмотреть, что может его вызвать, если исключение стабильно то и код до него.
Я понимаю, что при вызове функции PlacementEx происходит исключение, значит нужно проверить параметры передаваемые в нее.

Vi2

Как правильно заметил p3452, отсутствует регистрация ОСХ VCHATCH.VCHatchCtrl.1, ProgID которого описан в ресурсах. В силу того, что IsHatchObject() возвращает Истину, то создаётся контрол штриховки. Он вызывается при создании Панели свойств на основании инициализации в InitProcessParam(...).

Почему регистрация отсутствует, хз.
+ Благодарностей: 1

A.n.d.r.e.w

Спасибо, буду разбираться.