DlgDirList

Syntax

int DlgDirList(hDlg,lpPathSpec,nIDListBox,nIDStaticPath,wFiletype)

This function fills a list-box control with a file or directory listing. It fills the list box specified by the nIDListBox parameter with the names of all files matching the pathname given by the lpPathSpec parameter.

The DlgDirList function shows subdirectories enclosed in square brackets ([ ]), and shows drives in the form [–x–], where x is the drive letter.

The lpPathSpec parameter has the following form:

[[drive:]] [[ [[\]]directory[[\directory]]...\]] [[filename]]

In this example, drive is a drive letter, directory is a valid directory name, and filename is a valid filename that must contain at least one wildcard character. The wildcard characters are a question mark (?), meaning “match any character,” and an asterisk (*), meaning “match any number of characters.”

If the lpPathSpec parameter includes a drive and/or directory name, the current drive and directory are changed to the designated drive and directory before the list box is filled. The text control identified by the nIDStaticPath parameter is also updated with the new drive and/or directory name.

After the list box is filled, lpPathSpec is updated by removing the drive and/or directory portion of the pathname.

DlgDirList sends LB_RESETCONTENT and LB_DIR messages to the list box.

Parameter Type/Description  
hDlg HWND Identifies the dialog box that contains the list box.  
lpPathSpec LPSTR Points to a pathname string. The string must be a null-terminated character string.  
nIDListBox int Specifies the identifier of a list-box control. If nIDListBox is zero, DlgDirList assumes that no list box exists and does not attempt to fill it.  
nIDStaticPath int Specifies the identifier of the static-text control used for displaying the current drive and directory. If nIDStaticPath is zero, DlgDirList assumes that no such text control is present.  
wFiletype WORD Specifies DOS file attributes of the files to be displayed. It can be any combination of the values given in Table R.6, “DOS File Attributes.” Values can be combined by using the bitwise OR operator.  

Return Value

The return value specifies the outcome of the function. It is nonzero if a listing was made, even an empty listing. A zero return value implies that the input string did not contain a valid search path.

The wFiletype parameter specifies the DOS attributes of the files to be listed. Table 4.6 describes these attributes.

Table R.6 DOS File Attributes

Attribute Value Meaning
0x0000 Read/write data files with no additional attributes
0x0001 Read-only files
0x0002 Hidden files
0x0004 System files
0x0010 Subdirectories
0x0020 Archives
0x2000 LB_DIR flag1
0x4000 Drives
0x8000 Exclusive bit2

1 If the LB_DIR flag is set, Windows places the messages generated by DlgDirList in the application's queue; otherwise they are sent directly to the dialog function.

2 If the exclusive bit is set, only files of the specified type are listed. Otherwise, files of the specified type are listed in addition to normal files.