nxy_918 发表于 2003-4-26 19:56:00

vlisp 与 vba 讨论,讨论

最近听一位编程的好友说vlisp很强大,vba 的所有方法都能调用,而且向api这类的函数都能使用,甚至加载了一个arx编的dll连窗体的可视化编辑等等都可以办到。真是强大,说的我心里痒痒的,有股学vlisp的冲动。对vba的开发信心不足了。斑竹、各位大虾,能谈谈你们对两者之间的看法吗?讨论,讨论

Taoyimaier 发表于 2003-4-26 20:26:00

nxy,多熟悉的名字啊,估计你也在温州吧,

vlisp却是很强大,只是在开发界面程序时不方便,特别是一些不容易的windows控件(比如对话框)(不过如果是有arx的帮助,象doslib这样的东西,哪样就很爽了),由于有了activex支持,基本只要支持activex的软件,他都能二次开发它,不过好像api不能用吧
不过想来想去,最好的还是arx

mccad 发表于 2003-4-26 21:09:00

简单地比较一下

1.VLISP不支持WINAPI,也许是目前还未找到连接的方法吧,而API是一个非常强大的库,它可以从系统级对程序以及整个操作系统进行一些操作,因为在VBA中可以直接通过声明来调用WINAPI,所以VBA在这个方面比VLISP会强大些。
2.VLISP也支持ActiveX,也就是可以与VBA一样通过对象模型来操作图形以及操作其它软件,如EXCEL或ACCESS数据库等,但只是表明它可以做,目前还比较少内容涉及到这些方面,所以这方面的文献比较少,而且操作起来没有VBA爽,因为象方法、属性这些东西如果在编程时没有象VBA一样的自动提示输入,是一件非常苦的事。
3.VLISP因为是在ALISP的基础上进化的,而LISP语言是AutoCAD最早支持的二次开发语言,所以使用的人多,资源也多,有很多人为了增强LISP的性能也通过其它语言如ARX开发出一些可以在LISP上使用的函数集,也就是通常所说的API,就如DOSLIB,OBJECTDCL等等,这些大大扩充了LISP的局限,使LISP语言也能开发出大的程序来,但它毕竟要加载这些插件,有时你只想编一个很小的程序,却要附上一个大的插件一起提供给用户,而且这些插件经常也会弹出版权之类的东西,总会有些不爽。
4.VLISP可以直接在命令行中输入直接运行,这一点VBA是比不上的。就连VBA程序如果想使用最简单的程序加载及运行方法,都要通过LISP来实现。所以会VBA是完全不够是,也可以说是完全不行的,你还得会点LISP,呵呵,有点想不通。
就说这么多,有再补充!
页: [1]
查看完整版本: vlisp 与 vba 讨论,讨论