首页 理论教育 DOSLib函数应用详解-水利水电工程地质计算机应用

DOSLib函数应用详解-水利水电工程地质计算机应用

时间:2023-11-16 理论教育 版权反馈
【摘要】:DOSLib是一个Auto Lisp和Visual L isp可调用的函数库,它提供了Windows操作系统和DOS命令行函数给AutoCAD。DOSLib通过提供以下函数扩充了Auto Lisp和Visual Lisp程序语言。检查一个给定路径,并确定是否是一个有效的可以用于服务器或者共享路径的UNC通用命名公约。将完整的路径断开成四个部分,该函数返回一个包含四个部分的表。3目录函数更改当前目录到指定目录。Windows目录包含如Windows基础应用程序、初始化文件和帮助文件等文件。

DOSLib函数应用详解-水利水电工程地质计算机应用

DOSLib是一个Auto Lisp和Visual L isp可调用的函数库,它提供了Windows操作系统和DOS命令行函数给AutoCAD。它是以AutoCAD ARX应用程序方式编写的。DOSLib通过提供以下函数扩充了Auto Lisp和Visual Lisp程序语言。

1  驱动器函数

(dos_chkdsk [drive])

返回当前驱动器或指定驱动器的磁盘空间统计表。使用rtos函数可将返回值转换为字符串。返回一个表,包含有三项数据:总的磁盘空间,已用磁盘空间,未使用磁盘空间。

(dos_drive [drive])

返回当前驱动器或切换当前驱动器到指定驱动器。

(dos_drivep drive)

检查驱动器是否存在,存在返回T,否则返回nil。

(dos_drives)

返回可用驱动器列表。

(dos_drivetype [drive])

返回指定驱动器的类型,是可移动的、固定的、CD-ROM、RAM磁盘,还是网络驱动器。

(dos_filesys [drive])

返回指定驱动器的文件系统,是FAT、FAT32、NTFS、HPFS、CDFS,还是网络驱动器。

(dos_format drive)

显示一个Windows格式化对话框,允许用户格式化磁盘或软盘。

(dos_label [drive [label]])

返回或更改指定磁盘的卷标。

(dos_serialno [drive])

返回指定驱动器的序列号

2  路径函数

(dos_absolutepath path_from path_to)

创建一个绝对路径,将相对路径转换到绝对路径。

(dos_compactpath path maxchars)

把一个路径切短到一定的字符数。

(dos_fullpath path)

将一个局部路径转换为完整有效的路径。它不像dos_makepath函数,dos_fullpath可在路径中使用 .\\ 和 ..\\ 。

(dos_ispathrelative path)

查找一个路径,并且检查路径是否是相对的。

(dos_ispathroot path)

分析一个路径,测定它是否是根目录

(dos_ispathsameroot path1 path2)

比较两个路径,测定它们是否在同一个目录。

(dos_ispathunc path)

确定一个路径是否是一个有效的可以用于服务器或者共享路径的UNC通用命名公约。

(dos_ispathurl path)

检查一个给定路径,并确定是否是一个有效的可以用于服务器或者共享路径的UNC通用命名公约。

(dos_longpath path)

转换一个短路径名到一个长路径名。

(dos_makepath drive directory filename extension)

创建一个单独的路径,它由驱动器字母、目录路径、文件名和文件扩展名组合而成。

(dos_path)

返回由PATH命令或SET PATH语句设置的代表当前搜索路径的一个列表。

dos_pathbackslash path [T])

在一个路径字符串中加入或者删除一个反斜杆。

(dos_pathextension path [extension])

添加、修改或者删除路径字符串的扩展名。

(dos_pathquotes path [T])

在一个路径字符串中加入或者删除一个双引号

(dos_relativepath path_from path_to)

创建一个文件或者文件夹,相对其他文件或者文件夹的相对路径,这个路径不必是完全资格的,但它们必须有一个相同的前缀,否则这个函数将失败并返回nil。

(dos_shortpath path)

转换一个长路径名到一个短路径名。

(dos_splitpath path)

将完整的路径断开成四个部分,该函数返回一个包含四个部分的表。

dos_uncpath

把路径或文件名转变为UNC路径或文件名。

3  目录函数

(dos_chdir path)

更改当前目录到指定目录。该函数可更改任何驱动器上的当前目录。它不能用于更改当前驱动器。

(dos_deltree path)

删除一个目录及其所有的子目录。

(dos_dirattrib [pathspec [bits]])

返回目录属性或通过位码形式设置目录属性。

(dos_dirp path)

判断目录是否存在,存在返回T,否则返回nil。

(dos_dirtree [path])

返回目录和其子目录的列表。

(dos_getdir [title [path [message [T]]]])

显示一个Windows的“浏览文件夹”对话框窗口。

(dos_mkdir path)

创建一个新的目录,只有路径的最后部分可命名新的目录。

(dos_pwdir [drive])

返回当前驱动器或指定驱动器的当前目录。

(dos_rendir old_path new_path)

重命名一个存在的目录。

(dos_rmdir path)

删除一个空目录。

(dos_specialdir item)

得到一个特定目录的路径。

(dos_subdir [path [T]])

返回当前目录中或指定目录中找到的子目录的列表。该函数只是个路径相关函数,它的返回值不包含尾随的双反斜杠(\\)。

(dos_sysdir)

返回Windows系统目录的路径。该系统路径包含有如Windows库、驱动程序、字体文件等文件。

(dos_tempdir)

返回被指定为存放临时文件的目录路径。

(dos_windir)

返回Windows目录的路径。Windows目录包含如Windows基础应用程序、初始化文件和帮助文件等文件。

4  文件函数

(dos_attrib [filespec [bits]])

返回文件属性,或通过位码形式设置文件属性的值。

(dos_copy source destination)

复制一个或多个文件。该函数可用于从一个目录中复制文件到另外的目录中,或从一个驱动器中复制到其他驱动器中。

(dos_delete filespec)

删除存在的文件。

(dos_dir [filespec [format]])

返回一个包含在当前目录或指定目录中找到的文件列表。

(dos_dos2unix source destination)

转换一个DOS类型文本文件为UNIX类型文本文件。

(dos_encrypt filename password)

使用指定的密码加密或解密文件。

(dos_file filename)

返回一个包含文件的详细文件信息的列表。

(dos_filedate filespec)

返回包含文件名及(AutoCAD)日历的列表。(使用rtos和substr或dos strleft函数从AutoCAD日历中来提取元素。)

(dos_filep filename)

检查文件的存在。

(dos_filesize filespec)

返回包含文件名和文件大小信息的列表。

(dos_find [filespec [format]])

递归地搜索文件的所有实例。

(dos_getfiled title path filter)

显示一个Windows公用文件打开对话框,允许单选。

(dos_getfilem title path filter)

显示Windows公用文件打开对话框,允许多文件选择。

(dos_getfilenav title default ext flags)

显示一个AutoCAD风格的文件选择对话框。

(dos_move source [destination])

将两个或者多个文件合成一个文件。

(dos_move source destination)

移动文件到另外的位置。该函数可用于将一个文件从一个目录移动到另外的目录中,或从一个驱动器移动到另外的驱动器中。

(dos_openp filename)

返回文件的打开状态。函数用于网络环境中。DOSLib通过试图以独占共享访问方式打开文件来判断文件是否已经打开。

(dos_recent [filename])

增加或清除Windows最近使用的文档列表。

(dos_rename old-filename new-filename)

重命名一个存在的文件。不可以用这个函数重命名多个文件。

(dos_search filename [path])

沿指定路径搜索目标文件。

(dos_tempfile)

为临时文件创建一个名字。

(dos_touch filespec [date [time]])

设置文件最后写入的日期和时间。

(dos_unix2dos source destination)

将UNIT类型文本文件转换为DOS类型文本文件。在文本文件中DOS和UNIT系统使用不同的方法来表示行结束信息。DOS,还有Windows各版本均使用了回车/换行符对(CR/LF),而UNIT只使用了LF字符。

5  打印函数

(dos_getprn)

返回当前或缺省的Windows打印机。(dos_printers)

返回安装Windows打印机的列表。这些打印机均通过Windows控制面板安装。

(dos_setprn printername)

设置当前或缺省的Windows打印机。打印机名称必须是通过dos_printers函数返回的打印机名称。

(dos_spool filename printername)

缓存或打印一个文件到Windows打印机。该缓存文件必须为未经处理的打印机格式。

6  配置函数

(dos_getini section entry filename [default])

从Winodws样式初始化(INI)文件的指定区域中返回一个字符。该初始化文件必须具有以下格式:

[section]

entry=string

(dos_regaddkey hive key)

添加一新的键值到Windows注册表。如有必要,这个函数在指定的路径里创建全部的键值。

(dos_regdel key [name])

从Windows注册表中删除一个键值或主键。这个函数也将删除任一子键。

(dos_regaddkey hive key subkey)

从Windows注册表移除一个键。这个函数也将删除任一子键。

(dos_regdelval hive key name)

从Windows注册表移除一个键值。

(dos_regenumkey hive key)

从Windows注册表中列举指定的键。

(dos_regenumkey hive key)

从Windows注册表中列举指定的键名。

(dos_regget key [name])

搜索一个字符串或是从注册表中枚举值名。

(dos_reggetint hive key name)

搜索一个Windows注册表的整数值或REG_DWORD。

(dos_reggetstr hive key name)

搜索一个Windows注册表的字符串值或REG_SZ。

(dos_regenumkey hive key name)

返回一个Windows注册表输入的数值类型。

(dos_regkey key)

从Windows注册表中枚举指定的值名。

(dos_regset key [name [value]])

设定一个字符串键值或添加一个主键到Windows注册表。

(dos_regsetint hive key name int-value)

修改一个Windows注册表里主键的整数值或REG_DWORD。

(dos_regsetstr hive key name str-value)

为Windows注册表的主键设置一个字符串数值或REG_SZ。

(dos_setini section entry string filename)

复制字符串到Windows样式初始化(.INI)文件的指定区域中。

初始化文件必须为以下格式:

[section]

entry=string

7  进程函数

(dos_command command [show])

运行一个内部命令。内部命令是操作系统的命令。

(dos_execute command [show])

执行一个外部程序。PATH环境变量可用于查找要执行的程序。

(dos_exewait command [show])

执行一个外部程序,然后等待终止后再返回控制调用的应用程序。

(dos_processes [T])

返回正在运行的过程任务的列表。

(dos_shellexe file parameters [operation [show]])

打开或打印一个指定的文件。该文件可以是可执行文件或文档文件。

8  用户界面函数

(dos_checklist title prompt assoc-list [T])

显示带有检查样式列表框的可调整尺寸的Windows对话框。可用于切换对象或设置的状态。

(dos_combolist title prompt list [default])

显示带有组合样式列表框的可调整尺寸的Windows对话框。可用于从列表中选择一个项目或输入字符串值。

(dos_editbox title prompt [default])

显示带有多行编辑控制的可调整尺寸的Windows对话框。可用于为文本编辑段落,文本也可以从外部文件中被引入到对话框。

(dos_editlist title prompt list)

显示带有可编辑列表框的可调整尺寸的Windows对话框。可添加或删除列表中的项目,也可更改列表的排列顺序。

(dos_getcancel title message) (dos_getcancel T) (dos_getcancel)

显示由一条信息及一个取消按钮组成的无模式对话框。因为该对话框为无模式,可将其用于执行可被用户中断的长过程。

(dos_getcolor title [default])

显示一个Windows通用的颜色选择对话框,用于选择红绿蓝(RGB)颜色值。

(dos_getint title prompt [flags [default [max [min]]]])

与LISP的getint函数等价的Windows对话框。

(dos_getpassword title message [default [length]])(www.xing528.com)

与LISP的getstring函数等价的Windows对话框。对话框显示一个密码样式的编辑控制器。

(dos_getprogress title message maxvalue [T])

(dos_getprogress abs/-rel)

(dos_getprogress T)

(dos_getprogress)

显示一个由一条信息、一个进度条和一个可选的取消按钮组成的无模式对话框。因为该对话框为无模式,可将其用于执行可被用户中断的长过程。

(dos_getreal title prompt [flags [default [max [min]]]])

等同于LISP的getreal函数的Windows对话框。(实际数字是双精度浮点值,精度提供最少14位有效数字。值可以被表示为可在e或E后有指数的科学表示法,如0.0000041等于4.1e-6。)

(dos_getstring title prompt [default [length]])

等同于LISP的getstring函数的Windows对话框。

(dos_htmlbox title address [width height])

在一个可调整尺寸的对话框中显示一个网页。

(dos_listbox title prompt list)

显示带有单选列表框的可调整尺寸的Windows对话框。

(dos_msgbox text title button icon [duration])

创建、显示或操作一个Windows消息框或对话框。信息框包含一个程序定义信息和标题,以及任意预先定义的图标和按钮组合。还有一个可选的控制消息框自动关闭的维持时间。

(dos_msgboxchk text title button icon default regkey)

显示一个“不要显示这个对话框”的消息框。

(dos_msgboxex text title button-list icon)

创建、显示或操作一个扩展信息框或对话框。信息框包含一个程序定义信息和标题,以及自定义按钮。

(dos_multilist title prompt list [indices])

显示带有多选列表框的可调整尺寸的Windows对话框。

(dos_popupmenu menu-items [item-modes])

显示一个自定义、上下文弹出菜单。这个弹出菜单可以在任何地方出现,并且可以通过单击鼠标左键或右键解除。

(dos_proplist title prompt assoclist)

显示一个带有可编辑属性列表框的可调整尺寸的Windows对话框。

(dos_splash filename duration [T])

显示一个线程的Windows位图弹出屏幕。位图文件必须是Windows位图(BMP)。位图图像可以是24位(1670万色)色。

(dos_traywnd title text width height [operation [duration]])

显示一个与MSN Messenger风格通知窗口相似的弹出托盘窗口。

(dos_waitcursor [T])

切换Windows沙漏指针的状态。

9  字符串函数

(dos_strcase string [T])

将一个字符串里的所有字符转换大小写

(dos_strcat [string [string] ...])

返回一个连接多个字符串的字符串。

(dos_strchar string index [char])

返回或设置一个给定位置的字符。

(dos_strcompare string1 string2 [T])

比较两个字符串。

(dos_strdelete string index count)

从一个字符串中删除一个或者几个字符。

(dos_strfind string substring [index])

在一个大字符串中查找一个字符或子字符串。

(dos_strfindoneof string charset)

查找字符串中符合charset的第一个字符位置。

(dos_strformat format arg1 arg2 ...)

把一个字符串的格式改成类似C语言中sprintf函数的格式。

(dos_strformatcurrency number [num_digits [leading_zero [decimal_sep [thousands_sep[currency_sym]]]]])

把一个数字变成货币格式的字符串。

(dos_strformatnumber number [num_digits [leading_zero [decimal_sep [thousands_sep]]]])

把数字变成字符串。

(dos_strincluding string charset)

获取包含在charset中的字符的第一段字符串。

(dos_strinsert string index chars)

在字符串的给定位置插入一个字符或子字符串。

(dos_strischar [char [bits]])

根据一定的条件检验一个字符的类型。

(dos_strleft string count)

得到字符串的某位置以左的子字符串。(同Basic的LEFT$函数。)

(dos_strlength string)

返回字符串中的字符数目。

(dos_strmatch string wildcard)

按照通配符匹配字符串。

(dos_strmid string index [count])

根据个数和位数截取字符串中的一段。(同Basic的MID$函数。)

(dos_strremove string char)

在字符串中移去指定字符。

(dos_strreplace string oldchars newchars [T])

把指定字符用其他字符替代。

(dos_strreverse string)

将字符串中字符反向。

(dos_strreversefind string char)

在一个字符串中找特定字符,从末尾开始。

(dos_strright string count)

得到字符串的某位置以右的子字符串。(同Basic的RIGHT$函数。)

(dos_strtokens string tokens [T])

按照某些符号标记把字符串转变为表。

(dos_strtrim string [chars])

从一个字符串中切掉开头和末尾部分。

(dos_strtrimleft string [chars])

切掉字符串的开头指定部分。

(dos_strtrimright string [chars])

切掉字符串的末尾指定部分。

10  AutoCAD函数

(dos_acadmem)

返回AutoCAD内存统计数据。

(dos_acitorgb aci-value)

转换AutoCAD软件颜色到RGB颜色。

(dos_arxlist [T])

返回加载的arx应用程序列表。

(dos_closeall)

关闭全部打开的AutoCAD图形文件。

(dos_cmdline [T])

返回AutoCAD命令行或历史窗口的文本。

(dos_curvearea entity)

返回闭合曲线实体的面积。

(dos_dwgpreview title path [T])

(dos_dwgpreview title path-list [T])

显示图形和它们的略图预览图像的列表。

(dos_dwgver filename)

返回AutoCAD图形文件的版本。

(dos_extractprevie w filename)

从活动文档中提取预览位图到一个位图文件。

(dos_hatcharea entity)

返回填充对象的面积。

(dos_hideobjects entity-name)

(dos_hideobjects selection-set)

隐藏一个或多个AutoCAD实体。隐藏的实体可以通过dos_showobjects函数或关闭重起文件而显示或取消隐藏。

(dos_hlstorgb hue luminance saturation)

转换HLS颜色到RGB格式。

(dos_isbreak)

检查控制台中断。

(dos_isinsidecurve curve point)

检验一点是否位于一封闭平面曲线内。

(dos_istextscr )

检验AutoCAD文本屏幕是否打开或可见。

(dos_isvlide)

检验Visual LISP IDE是否打开。

(dos_layerlistbox title prompt [bits])

在一可调整大小的Windows对话框显示AutoCAD图层列表。

(dos_linetypebox [default [T]])

显示AutoCAD的线型选择对话框。

(dos_lisplist [T])

返回加载Auto Lisp/Visual Lisp文件的列表。

(dos_massprops entity)

返回3D实体的质量属性。

(dos_plinecentroid entity)

返回一封闭平面多义线的质心

(dos_progbar message maxval ue)

(dos_progbar abs/-rel)

(dos_progbar)

操纵AutoCAD状态栏的进度条。

(dos_rgbtoaci red green blue)

(dos_rgbtoaci rgb)

转换RGB颜色到AutoCAD颜色。

(dos_rgbtohls red green blue)

(dos_rgbtohls rgb)

转换RGB颜色到HLS格式。

(dos_saveall)

保存所有打开的AutoCAD图形文件。

(dos_show method)

控制AutoCAD的显示窗口。

(dos_showobjects entity-name)

(dos_showobjects selection-set)

(dos_showobjects)

显示或取消隐藏一个或多个AutoCAD实体。可以通过使用dos_hideobjects函数隐藏实体。

(dos_xreflist [filename])

返回外部参考文件的列表。

11  DOSLib函数

(dos_about)

显示DOSLib的版本号版权信息。

(dos_demandload [val])

返回或设置DOSLib的按需加载方法。

(dos_help [function])

返回DOSLib函数列表,显示有效的DOSLib函数列表。

(dos_version)

返回DOSLib版本号。

12  系统及其他函数

(dos_adminp)

决定当前的用户是否有管理人权利。(dos_beep [type])

播放Windows波形声频文件。声频文件的声音类型由登录在注册表的SOUNDS部分来识别。如果系统不能播放指定的警告声音,dos_beep函数将播放系统的缺省声音。如果该函数不能播放缺省的声音,dos_beep将通过使用计算机喇叭产生标准的蜂鸣。

(dos_capslock [T])

切换<Caps Lock>(大写锁定)键。

(dos_cdate format)

返回一个格式化的日期/时间字符串。

(dos_clipboard [string])

返回或设置Windows剪贴板的字符串。

(dos_computer [name])

返回或设置当前系统的计算机名称。当它由注册表初始化时,该名称会在系统启动时确定下来。更改后只有在系统下次启动时才生效。

(dos_date [date])

返回当前系统日期或更改当前系统日期为指定的日期。

(dos_guidgen)

创建一个GUID,一个随机的唯一的128位整数。

(dos_hostname)

返回系统本地DNS(域名服务器)主机名称。

(dos_htmlhelp filename [index/topic])

显示一个HTML帮助文件内容。(开启HTMP帮助,并且传递应用程序附加的表明自然状态的帮助请求数据。)

(dos_ipaddress)

返回本地TCP/IP地址的列表。

(dos_ispoweruser)

检查当前用户的权力状态。

(dos_macaddress)

返回系统的网卡MAC地址。

(dos_mem)

返回包含有关当前可用内存的信息列表。该函数返回有关物理虚拟内存的信息。使用rtos函数来转换返回值为字符串。

(dos_numlock [T])

切换<Num Lock>(数字锁定)键的状态。

(dos_pause duration)

按指定秒数暂停一个函数或表达式的执行。

(dos_random)

返回一个伪随机数

(dos_scrolllock [T])

切换<Scroll Lock>键的状态。

(dos_sortlist list)

将字符串、实数或整数列表进行排序。

(dos_speaker frequency duration)

通过PC喇叭播放声音。

(dos_time [time])

返回当前系统时间或更改当前系统时间为指定的时间。

(dos_username)

返回当前线程的用户名。该名称为当前登录系统的用户。

(dos_ver)

返回操作系统的版本。

(dos_wav filename)

插入Windows波形音频文件。

(dos_winhelp filename [index/topic])

显示Windows帮助文件的索引或主题。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈