明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2037|回复: 2

lisp 可以与 DLL 连接吗

[复制链接]
发表于 2004-12-28 12:32:00 | 显示全部楼层 |阅读模式
lisp 可以与 DLL 连接吗
"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2004-12-28 16:12:00 | 显示全部楼层
参考vlax-import-type-library的说明
发表于 2004-12-30 20:26:00 | 显示全部楼层

语法

(vlax-import-type-library :tlb-filename filename [ :methods-prefix mprefix :properties-prefix pprefix :constants-prefix cprefix]) 功能

从类型库中输出信息。

 

说明

1)参数 filename 为字符串,指定类型库。文件可为如下类型:

  • 类型库 (.tlb) 或对象库 (.olb) 文件

  • 可执行 (.exe) 文件

  • 包含类型库资源的库 (.dll) 文件

  • 拥有类型库的复合文档

  • 其他可被 LoadTypeLib API 理解的文件格式

若省略 tlb-filename 中的路径,AutoCAD 将在支持文件搜索路径中查找。

2)参数 mprefix 用于对象方法包容器函数的前缀。例如,如果类型库包含 Calculate 方法,而 mprefix 参数设置为 cc-,则 Visual LISP 生成名为 cc-Calculate 的包容器函数。该参数的默认值为“”。

3)参数 pprefix 为用于对象特性包容器函数的前缀。例如,若类型库包含 Width 特性,并提供读写权限,而 pprefix 设置为 cc-,则 Visual LISP 生成名为 cc-get-Width 和 cc-put-Width 的包容器函数。该参数的默认值为“”。

4)参数 cprefix 为用于类型库中常量的前缀。例如,若类型库包含 ccMaxCountOfRecords 特性,并提供读写权限,而 cprefix 设置为 cc-,则 Visual LISP 生成名为 cc-ccMaxCountOfRecords. 的常量。该参数的默认值为“”。

注意在向 vlax-import-type-library 传递参数时关键字的使用。

返回值:

若成功则返回 T。

范例

输入 Microsoft Word 类型库,为方法和特性指定前缀“msw-”,并为常量指定前缀“mswc-”:

$ (vlax-import-type-library

:tlb-filename "c:/program files/common files/microsoft shared/office10/mso.dll"

:methods-prefix "msw-"

:properties-prefix "msw-"

:constants-prefix "mswc-")

T

备注:

1)由 vlax-import-type-library 创建的对象包容器仅在发出 vlax-import-type-library 的文档环境中可用。

2)在当前版本的 Visual LISP 中,vlax-import-type-library 是在运行时而不是在生成时执行的。在后续版本的 Visual LISP 中,这一情况可能发生变化。在使用 vlax-import-type-library 时,建议您采取如下措施:

a ) 若您希望在不同的计算机上运行同一代码,则不要在 tlb-file-name 参数中指定绝对路径。

b ) 不要从任何 AutoLISP 表达式的内部运行 vlax-import-type-library 应该尽量从顶层表达式位置调用该函数)。

c ) 在 AutoLISP 源文件中,先调用 vlax-import-type-library,然后再使用类型库中定义的方法包容器、特性包容器或常量。

请参见 vlax-typeinfo-available-p 函数。

 

 

   

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-17 23:38 , Processed in 0.167006 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表