更新时间:2024-03-15 13:09
QueryDosDevice,函数。在Windows NT中,DOS设备名会映射成NT系统设备名。该函数可判断当前的设备映射情况。
VB声明
返回值
Long,零表示出错。如执行成功,返回保存到lpTargetPath的字符数。会设置GetLastError
参数表
参数 类型及说明
lpDeviceName String,如果是vbNullString,那么lpTargetPath会载入当前映射的MS-DOS名称的一个列表。如果是个MS-DOS名,则lpTargetPath会载入一个设备映射列表(第一个名字是活动映射,后续的名字是以前尚未删掉的映射)
lpTargetPath String,名称列表,具体取决于lpDeviceName参数。这些名字用NULL字符分隔。列表最后用两个连续的NULL字符中止
ucchMax Long,lpTargetPath缓冲区的大小
注解
可用DefineDosDevice函数将映射变成DOS设备名
Windows NT
QueryDosDevice函数是一个应用程序获得有关DOS设备名的信息。该函数可以获得特定DOS设备名的当前映射。该函数还可以获得所有存在的DOS设备的列表。
DOS设备作为符号连接被存储在Windows NT对象名空间中。把一个DOS路径转换成对应的Windows NT 路径的代码使用这些符号连接来映射DOS设备和驱动器字母。QueryDosDevice函数提供一个机制使WIN32应用程序可以查询用于实现DOS设备名空间的符号连接的名称和查询每个特定符号连接的值。
参数:lpDeviceName
指向一个DOS设备名字符串,该字符串指定查询的目标。该参数可以为NULL。在这种情况下,QueryDosDevice函数将把所有已存在的DOS设备名列表存储到lpTargetPath指向的缓存区。
LpTargetPath
指向将接收查询结果的缓存区。该函数把一个或多个以NULL结束的字符串填充到这个缓存区中。最后一个以NULL结合素的字符串后还跟有一个附加的NULL。
若lpDeviceName不是NULL,则该函数可以获得有关由lpDeviceName指定的特定DOS设备的信息。存储到缓存区中的第一个以NULL结束的字符串是该设备的当前映射,其余以NULL结束的字符串代表设备的未被删除的原映射。若lpDevicceName为NULL,则该函数获得所有已存在的DOS设备名的列表。存储在该缓存区中的每个以NULL结束的字符串是已存在的DOS设备的名称。
UcchMax
指出可以存储到由lpTargetPath指向的缓存区中的最大字符数。
返回值:若函数成功,返回值是实际存储到lpTargetPath指向的缓存区中的字符数。若函数失败,则返回值为0。使用GetLastError函数可获得补充的错误信息。
注释:该函数提供了一个手段使用WIN32应用程序可以创建和修改用于实现DOS设备名空间的符号连接。
DosDevice名称是全局名称,一旦定义了该名称,则在它被明确地删除或系统重新启动前,该名称对所有过程有效。