ADN Club > ObjectARX

миграция на ObjectARX 2015

(1/3) > >>

begiz:
Доброго времени суток, коллеги.
Столкнулся с проблемой при миграции на ObjectARX 2015 в mixed-mode(DLL).
К посту прицепил проект, сделаный ObjectARX Wizardom.
Там маленький кусочек кода который по каким то причинам перестал работать в 2015, но работал во всех версия от 2010 до 2014.

Пытаюсь записать xRecord и считать его обратно.
Что получается:
1. в отладке не вижу знчений Acad::errorStatus и resbuf (поетому и проверить не могу почему не работает, вывод значений в консоль как то не помог)
2. Если верить выводу в консоль, то xRecord создается и записывается куда надо. Но при чтении его же, ошибок нету но и значения тоже нету.
3. Тот же код и отлаживается и работает если проект не в mixed(DLL), а в native(ARX).

П.С. весь проект в mixed-mode и очень большой, т.е. перевод в native - не вариант.

Подскажите где я чего не дочитал в migration guide или чего там не написано?

Win7 64-bit
VS2012 SP4
ACAD 2015 64-bit

Спасибо

Александр Ривилис:
Приветствую на нашем форуме. Ну почему себя так ведёт отладчик в Mixed Mode я не скажу - не пользуюсь, а вот зачем ты создаёшь неправильный список Xrecord я понять не могу.
Проверь значение es = pRec->setFromRbChain(*data); у меня оно eInvalidDxfCode
Для проверки замени RTREAL на 41 в вызове acutBuildList

begiz:
Добрый день, Александр

А как вы получили eInvalidDxfCode(50)? через вывод в консоль?

Оказалось : RTREAL != AcDb::kDxfReal (40) в ObjectARX 2015.

Сейчас все заработало как положено.

Спасибо

Александр Ривилис:

--- Цитата: begiz от 15-07-2014, 13:46:14 ---А как вы получили eInvalidDxfCode(50)? через вывод в консоль?
--- Конец цитаты ---
Да.

--- Цитата: begiz от 15-07-2014, 13:46:14 ---Оказалось : RTREAL != AcDb::kDxfReal (40) в ObjectARX 2015.
--- Конец цитаты ---
Никогда ни в какой версии ObjectARX RTREAL не равнялся AcDb::kDxfReal (40)
Последние двадцать пять лет RTREAL равен 5001 :)

begiz:

--- Цитировать ---Никогда ни в какой версии ObjectARX RTREAL не равнялся AcDb::kDxfReal (40)
Последние двадцать пять лет RTREAL равен 5001 :)

--- Конец цитаты ---
так точно!
но почему то раньше такой вариант записи работал как надо :)
за DXF обращался только для всяких kDxfHardPointerId и подобных.

Навигация

[0] Главная страница сообщений

[#] Следующая страница

Перейти к полной версии