求助 opendcl不兼容问题
请教一个问题 我用cad2006+理正建筑v4.1 调用opendcl非模态对话框 一调用就非法中断 调用opendcl下面的modeless.lsp也是一样而在纯cad下没有问题,能帮助分析一下原因么另外odcl怎样打包到vlx文件中
谢谢各位指点
参看\OpenDCL Studio\ENU\Samples\ 下找distsample*.lsp 样例文件
The DistSample*.* files are lisp source code and OpenDCL files to
demonstrate how to embed an OpenDCL project (saved as a .odcl.lsp
file) into a vlx file, and then how to use said resource as one
might normally use a regular OpenDCL project file. cjs 发表于 2011-3-29 11:27 static/image/common/back.gif
参看\OpenDCL Studio\ENU\Samples\ 下找distsample*.lsp 样例文件
我是过了,还是不行,必须把lsp改为txt文件才可以 本帖最后由 jh1005 于 2011-4-4 22:11 编辑
例如:lsp文件为test.lsp,odcl对话框文件为qq.odcl,另存为qq.odcl.lsp,修改工程文件test.prv
(PRV-DEF (:target . "TEST.VLX")
(:active-x . T)
(:separate-namespace)
(:protected . T)
(:load-file-list (:lsp "test.lsp") )
(:require-file-list( :txt "qq.odcl.lsp"))
(:ob-directory)
(:tmp-directory)
(:optimization . st)
)
用工程文件test.prv重新打包
调用对话框:
(Dcl_Project_Import (vl-get-resource "qq.odcl"))
(dcl_form_show qq_xxxx) 你可能没看清楚,那还需要odcl文件,打开qq.odcl.lsp,复制其中的内容到你写的lsp文件中,直接编译lsp文件就可以了。如下:
(defun _Load_ODCL_Stream (password alias / project rtype)
(setq project
'复制内容
) ;_ 结束setq
((dcl_project_import project password alias))
) ;_ 结束cond
) ;_ 结束defun
主程序:
(defun
...
(_Load_ODCL_Stream nil nil)
...
) 3楼方法是把qq.odcl.lsp也打包进vlx里了,就成了txt,可以用vl-get-resource读取。
调用对话框用4楼的语句就可以,打包了就无需odcl文件。
(个人不喜欢把对话框打包进去,因为调出对话框会慢一点。) 本帖最后由 brainstorm 于 2011-4-8 00:09 编辑
感谢大家帮助,我用的是这种
可以用vl-get-resource读取。
调用对话框用4楼的语句就可以,打包了就无需odcl文件
本帖最后由 brainstorm 于 2011-4-8 00:20 编辑
回复 brainstorm 的帖子
再请教一个问题
假定使用非模态对话框,我现在正在屏幕上执行 (getpoint),这时鼠标回到对话框上,希望终止当前(getpoint),而激活另一段lisp代码,如何实现,我现在存在的问题是,提示 不能重复进入lisp
brainstorm 发表于 2011-4-8 00:09 static/image/common/back.gif
感谢大家帮助,我用的是这种
可以用vl-get-resource读取。
调用对话框用4楼的语句就可以,打包了就无需od ...
请问vl-get-resource函数支持的最长字符串是多少?
如果我存入的TXT文件有100万个字符可以支持吗?目前我用不到那么长的TXT,但我想知道允许的最大长度。谢谢!
页:
[1]