Тема: Vlx приложения

Подскажите в чем проблема: почему не работает vlx приложение, в котором собраны несколько lsp и dcl файлов, но в тоже время - если разбить lsp файлы, каждый в свое отдельное приложение и затем их все подгрузить, то они работают. Причем при компиляции общего приложения никаких предупреждений со стороны автокада не возникало.

Re: Vlx приложения

Скорее всего дело в том, что программа не находит dcl. То, что они прикомпонованы в одно приложение - мало. Диалоги надо загружать в обычном порядке. Прикомпоновка DCL предусмотрена для желающих скрыть текст описания диалога.

Советую оставлять DCL открыто, и вызывать в обычном порядке. Позаботившись, чтобы программа точно знала, где живет DCL, а не надеялась на то, что он валяется где-то на путях поиска.

Re: Vlx приложения

Но, если открыть любое приложение vlx, то описание диалога вовсе не зашифровано. Вначале идет шифрованная часть - lsp файл а заним текст диалога, в том виде, в каком он записан в лиспе.
Т.е. если разбить каждую функцию пользователя и её диалоговые окна по отдельным, своим, приложениям vlx - то функции работоспособные, если же их собрать вместе с описаниями диалоговых окон в один большой файл vlx, то не работает и при обращении к пользовательской функции автокад пишет, что она не определена.
Раньше, когда автокад у меня стоял под Win98, теже файлы и описания диалоговых окон прекрастно работали в одном приложении, теперь Автокад стоит под W2000 Pro. может быть сдесь проблема?

Re: Vlx приложения

Nu eto mw uje prohodili wink
1. "Sojmite" DCL v odnu tekstovuyu stroku.
2. Sohranite "eto" v file name.txt
3. Skompiliruyte vlx kak soderjaschiy text, vmesto dcl (!!!)
4. Vwzwvayte etot text vo VREMENNWY file name.tmp
5. Ispol'zuyte dialog i UDALITE file name.tmp
Text budet "zashifrovan" ! (pravda ne vsegda polnost'yu sad )

Re: Vlx приложения

DCL - Прекрасно интегрируется внутрь vlx.
Проверьте, использует ли Ваше приложение - собственное пространство имен переменных (Separate namespace).
Если да, то все функции и переменные, определенные в Vlx - недоступны в Автокаде и других приложениях (если их специально не импортировать).
Если дело в этом то Отключите галочку Separate namespace.