将iAttr的最高位元设立就可以只列出符合条件的档案,而不包括其他档案。例如,对Windows的档案备份程式,也许您只想列出最後一次备份後修改过的档案,这种档案的归档位元设立,因此您可以使用DDL_EXCLUSIVE | DDL_ARCHIVE。
档案列表的排序
lParam参数是指向档案指定字串如「*.*」的指标,这个档案指定字串不影响清单方块中的子目录。
您也许希望给列有档案清单的清单方块使用LBS_SORT讯息。清单方块首先列出符合档案指定要求的档案,再(可选择)列出子目录名。列出的第一个子目录名将采用下面的格式:
[..]
这一个「两个点」的子目录项允许使用者向根目录回溯一层(在根目录下列出档案名时此项目不会出现)。最後,具体的子目录名称采用下面的形式:
[SUBDIR]
再来是以下列形式列出的有效磁碟机(也是可选择的):
[-A-]
Windows的head程式
UNIX中有一个著名的实用程式叫做head,它显示档案开始的几行。让我们使用清单方块为Windows编写一个类似的程式。如程式9-6所示,HEAD将所有档案和子目录列在清单方块中。您可以挑选某个被选择的档案来显示,方法是在该档案上使用滑鼠双击或者使用Enter键按下要选的档案。您也可以使用这两种方法之一来改变子目录。这个程式在HEAD视窗显示区域的右边,从档案的开头开始显示,它最多能够显示8 KB的内容。