vlisp中启动画面、关于、历史记录及注册表/初始化文件读写操作初探
www.dimcax.com
2、建立并得到动态链接库接口类[(setq vbapp (vla-getinterfaceobject cadapp "xxxx.application"))];
这一步总也不成功!不知是不是dll编译有误。
楼主能否提供一个简单的dll示例源文件以供学习?不盛感激!!
d
我还是用lsip好的,务实,“做家务”
d
咋办不成:那是你对动态库dll的编写还不太熟悉,和vb/vc没有关系:
.dll 中包含的类按照公有和私有划分为两类:第一类为公共类,即对外开放接口的类;第二类私有类,即仅供dll内部使用,不对外开放类。当然了还包括其他定义函数、变量等。如:
xtest.dll 中包含三个类: clstest、clsmeprivate1、clsmeprivate2,其中clstest为对外接口类(公共类)、clsmeprivate1和clsmeprivate2为私有类。其中的具体函数可以是友元(friend)、公共(public)、私有(private)、内联(inline)等等,只要属于vc或vb认可的定义类型即可.
则使用vlisp调用语句为:
(vla-getinterfaceobject cadapp "动态库文件名.公共类名"),如上则为:
(vla-getinterfaceobject cadapp "xtest.clstest"),然后再调用clstest中的公用函数即可!
【注意】只有公共类中定义的函数才能成为.dll对外开放使用的函数!
d
不懂
用好的心态学好来
d
感谢楼主的回复!
由于对动态库dll的编写还不太熟悉,我回去啃了半天书本还是无法解决:(
我的测试程序已发到您的邮箱,还望不吝赐教!
d
初学者,长见识了,榜样啊