|
DOSLib或DOS库是一个AutoLISP和Visual Lisp可调用函数库,它提供了Windows操作系统和DOS命令行函数给AutoCAD。它是以AutoCAD
ARX应用程序方式编写的,DOSLib通过提供以下函数扩充了AutoLISP和Visual LISP程序语言:
◆ 驱动器处理函数:检查驱动器、在驱动器间切换以及检查磁盘空间。
◆ 路径处理函数:操作路径。
◆ 目录处理函数:创建、重命名、移除、选择和更改目录。
◆ 文件处理函数:复制、删除、移动、重命名和选择文件。同时也提供获取目录列表、通过多种方式搜索和查找文件、更改属性等函数。
◆ 打印处理函数:获取和设置缺省打印机和假脱机打印文件。
◆ 初始化文件处理函数:操作Windows样式初始化(INI)文件,以及Windows注册表访问函数。
◆ 过程处理函数:运行内部操作命令或其它程序。
◆ 图像化用户界面函数:获取字符串、整数、实数和列表 ,并显示Windowss信息框和弹出屏幕。
◆ 非模态对话框和沙漏光标:可在长时间处理过程时显示。
◆ 系统和其它杂项函数,诸如获取系统信息、列表排序、更改系统日期和时间、操作键盘和播放声音等。
DOSLib Version 5.1 新增功能
新增的函数
在这个版本的DOSLib中新增了5个函数:
dos_demandload 控制DOSLib的按需加载。
dos_getcancel 显示非模态取消对话框。
dos_getprogress 显示一个非模态、进度条对话框。
dos_ping TCP/IP Ping 工具。
dos_proplist 显示带有属性列表的对话框。
改动的函数
有6个函数作了改动:
dos_command 附加的参数增加了控制新打开的窗口是怎样显示出来。
dos_dwgpreview 附加的参数增加了在AutoCAD 2000中控制预览图像的背景。
dos_execute 附加的参数增加了控制
dos_exewait
dos_msgbox 附加的参数增加了控制对话框在自动关闭前显示的时间。
dos_shellexe
系统需求
DOSLib 需要运行于Microsoft Windows 95、98、NT
4.0或2000下的Autodesk的AutoCAD R14、AutoCAD 2000或AutoCAD
2000i。
DOSLib中的文件
以下文件形成了DOSLib:
| 文件名 |
说明 |
| DOSLIB14.ARX |
DOSLib for AutoCAD R14。 |
| DOSLIB2K.ARX |
DOSLib for AutoCAD 2000。 |
| DOSLIB51.PDF |
Adobe® Acrobat®格式的DOSLib开发者指南。 |
安装DOSLib
尽管DOSLib文件可安装并运行在磁盘上的任何目录下,但对AutoCAD
2000环境推荐使用以下位置:
◆ 由"支持文件搜索路径"指定的目录(如:C:\ProgramFiles\Acad2000\Support)。
◆ 多用户公用的目录(如:Z:\Projects\Support)。
◆ AutoCAD可执行程序文件(ACAD.EXE)所在位置的目录(如:C:\Program
Files\Acad2000)。
加载DOSLib
手动加载DOSLib
你可通过多种方式手动加载DOSLib manually。可查看应用程序在线帮助或编写的文档中有关加载AutoCAD
ARX应用程序的有关内容。
使用ARX命令手动加载DOSLib:
1在AutoCAD命令行提示中键入ARX。
2当出现一个选项列表时,键入L。
3在选择ARX对话框中,找到你安装文件的位置并选择文件DOSLIB14.ARX或DOSLIB2K.ARX,然后点击打开。
使用APPLOAD手动加载DOSLib:
4从AutoCAD工具菜单中,选择加载应用程序。或在AutoCAD命令行提示中键入APPLOAD。
5在加载/卸载应用程序对话框中,找到你安装文件的位置并选择文件DOSLIB14.ARX或DOSLIB2K.ARX,然后点击加载,再点击关闭。
自动加载DOSLib
DOSLib也可通过多种方式自动加载。可再查看应用程序在线帮助或编写的文档中有关加载AutoCAD
ARX应用程序的有关内容。
自动加载DOSLib:
●添加适当的DOSLib文件到ACAD.RX文件中,或者
●添加arxload函数到ACAD.LSP或menu.MNL文件中,或者
●添加DOSLIB2K.ARX到AutoCAD启动组中(只对ACAD2000有效)。
如果你选择了arxload方法,arxload函数必须是S::STARTUP函数的一部分。这是因为除了使用S::STARTUP函数外AutoCAD不能初始化ARX。
●同时,AutoCAD在menu.MNL文件前处理ACAD.LSP文件。如果两个文件中都存在S::STARTUP函数,则只对menu.MNL中的函数进行解释。
以下代码样例说明了怎样使用S::STARTUP函数自动加载DOSLib:
样例
;Startup 函数,此函数中有自动判断AutoCAD版本并加载不同版本的DOSLib。
(defun S::STARTUP ()
(cond
((= (atoi (substr (getvar "acadver") 1 2))14)
(if (not (member "doslib14.arx" (arx)))
(if (findfile "doslib14.arx")
(arxload "doslib14")
)
)
)
((= (atoi (substr (getvar "acadver") 1 2))15)
(if (not (member "doslib2k.arx" (arx)))
(if (findfile "doslib2k.arx")
(arxload "doslib2k")
)
)
)
)
)
按需加载DOSLib
在DOSLib 5.1中新增加的一个特性就是可以在AutoCAD中按需加载。注意,在AutoCAD启动时实现按需加载的应用程序将早于在ACAD.RX中列出的应用被加载。
当使用以上方法第一次加载DOSLib后,它就自动将其作为可按需加载的应用程序注册到AutoCAD中。该初始配置使其在命令行调用时按需加载。
以后的AutoCAD进程中,只需在AutoCAD命令行提示下键入doslib就可以加载DOSLib。DOSLib也可在任何时间的AutoCAD状态下配置为按需加载。请参见dos_demandload函数文档以了解更详细的内容。
如果你更改了DOSLib ARX文件的位置,则你必须手动加载一次DOSLib,使其自动将自身注册到AutoCAD中。
|