Тема: Команда не выполняется в OnClick()

Есть форма, в обработчике OnClick() которой вызывается функция, являющаяся одновременно командой ARX-приложения.
Так вот, проблема: когда эта же команда просто вызывается в командной строке, то она выполняется без проблем, а вызов этой же функции в OnClick - Fatal error. В чем проблема?

Re: Команда не выполняется в OnClick()

А от кого наследуется класс диалогового окна? От CAcUiDialog? Возможно, в качестве родителя надо использовать именно его.
И в теле ОнКлика() использовать функции
BeginEditorCommand();
CompleteEditorCommand();
CancelEditorCommand();

Re: Команда не выполняется в OnClick()

По всей видимости причина очень проста.
(хотя на 100% я не уверен т.к. подробного описания того, что в команде выполняется и из какого контекста зовется функция в диалоге, не изложено)
Если вызывать команду с ком строки. То если внимательно прочитать хелп там автоматически локируется документ и по выходу разлокируется. При работе с диалогами все события от кнопок и т.п. идут в аппликейшен констексте и если сам диалог не вызван с командной строки, то документ не залокирован и его надо залокировать. Помойму есть врапер AcAxDocLock или что-то похожее ( хелпа под рукой нет ). Создаешь переменную этого врапера и на время жизни оного ( см хелп ) документ залокирован и можно работать с ним ( то бишь с базой )
Надеюсь причина в этом и мой совет поможет ее решить.

Re: Команда не выполняется в OnClick()

Извините, что не уточнил, но диалог у меня чисто MFC-ишными средствами был создан.

Re: Команда не выполняется в OnClick()

Да не важно какаими средствами.
Документ надо залокировать чтобы с ним работать и MFC ни при чем.