Тема: Проблемы с исполнением команд AutoCAD

Вкратце проблема такая: используя acedCommand(RTSTR...), несколько раз вызываю различные команды автокада (zoom, layout,regenall,rotate,arc,array). Изначально писал прогу "без окна" (то есть все исходные данные нужно было вводить из командной строки). Все работало.
После чего решил навести красоту и сделать окно. Все делал по книжке многоуважаемого г-на Полещука. То есть создал приложение с поддержкой MFC, в нем сделал окошко, "наследованное" от класса CAcUiDialog.
Свою функцию прописал в тот же класс, который описывает окно и все связанные с ним функции. И вот тут начались проблемы с acedCommand.
Если вызов команд zoom,layout,regenall работает без проблем, то array,arc,rotate не заводятся никак.
Компилируется все без проблем, но когда приложение начинает работать в acade, при отработке array на запросе "Прямоугольный/Круговой" ругается, что посылаемое мной "_circular" - неправильное ключевое слово, и соотвественно на этом все и останавливается.
Непонятно, почему не работают только определенные команды (array...). непонятно, почему "_circular" - неправильное ключевое слово. Понятно,что к самому вызову команды это не имеет никакого отношения.
Что делать? Может надо какой-нибудь метод прописать, чтобы все завелось?

Re: Проблемы с исполнением команд AutoCAD

> Сергей
Ты ресcурсы не забываешь переключать на AutoCAD перед запуском acedCommand(...)?

Re: Проблемы с исполнением команд AutoCAD

P.S.: До вызова acedCommand(...):

  HINSTANCE hAcad = acedGetAcadResourceInstance();
  HINSTANCE hCur  = AfxGetResourceHandle();
  AfxSetResourceHandle(hAcad);

После вызова:

AfxSetResourceHandle(hCur);

Re: Проблемы с исполнением команд AutoCAD

> Александр Ривилис
Простите за долгое молчание! Был вдали от инета.
:о)
Спасибо огромное! Конечно же, всё заработало!

Re: Проблемы с исполнением команд AutoCAD

Ну и отлично! :)

Re: Проблемы с исполнением команд AutoCAD

А кто подскажет, как переключать ресурсы перед запуском acedCommand(...) в случае смешанного кода?
(когда MFC не используется)

(изменено: Александр Ривилис, 1 ноября 2011г. 12:22:11)

Re: Проблемы с исполнением команд AutoCAD

Максим Маланичев пишет:

А кто подскажет, как переключать ресурсы перед запуском acedCommand(...) в случае смешанного кода?

(когда MFC не используется)

Боюсь, что никак и потребуется использование библиотек MFC. Хотя наверное можно и неявно (через LoadLibrary() и GetProcAddress() и FreeLibrary()) Но нужно будет учитывать версию и разрядность MFC...

Re: Проблемы с исполнением команд AutoCAD

Спасибо, Александр, я попытаюсь найти другой путь....

Re: Проблемы с исполнением команд AutoCAD

Максим Маланичев пишет:

Спасибо, Александр, я попытаюсь найти другой путь....

Ну для этого нужно понимать какие команды будут вызываться. Наверняка многие из них можно реализовать самостоятельно.

Re: Проблемы с исполнением команд AutoCAD

...в случае смешанного кода?
(когда MFC не используется)

Т.е. используется C++/CLI и классы, скажем, Windows Forms? Тогда (поправьте меня, если не прав) никакие ресурсы вообще не надо переключать.