Condividi tramite


Funzione DlgDirListA (winuser.h)

Sostituisce il contenuto di una casella di riepilogo con i nomi delle sottodirectory e dei file in una directory specificata. È possibile filtrare l'elenco dei nomi specificando un set di attributi di file. L'elenco può facoltativamente includere unità mappate.

Sintassi

int DlgDirListA(
  [in]      HWND  hDlg,
  [in, out] LPSTR lpPathSpec,
  [in]      int   nIDListBox,
  [in]      int   nIDStaticPath,
  [in]      UINT  uFileType
);

Parametri

[in] hDlg

Tipo: HWND

Handle per la finestra di dialogo contenente la casella di riepilogo.

[in, out] lpPathSpec

Tipo: LPTSTR

Puntatore a un buffer contenente una stringa con terminazione Null che specifica un percorso assoluto, un percorso relativo o un nome file. Un percorso assoluto può iniziare con una lettera di unità (ad esempio, d:) o un nome UNC (ad esempio, \<i>nomecomputer\nomecon sharename).

La funzione suddivide la stringa in una directory e in un nome file. La funzione cerca nella directory i nomi che corrispondono al nome file. Se la stringa non specifica una directory, la funzione cerca nella directory corrente.

Se la stringa include un nome file, il nome file deve contenere almeno un carattere jolly (? o *). Se la stringa non include un nome file, la funzione si comporta come se fosse stato specificato il carattere jolly asterisco (*) come nome file. Tutti i nomi nella directory specificata che corrispondono al nome file e hanno gli attributi specificati dal parametro uFileType vengono aggiunti alla casella di riepilogo.

[in] nIDListBox

Tipo: int

Identificatore di una casella di riepilogo nella finestra di dialogo hDlg. Se questo parametro è zero, DlgDirList non tenta di riempire una casella di riepilogo.

[in] nIDStaticPath

Tipo: int

Identificatore di un controllo statico nella finestra di dialogo hDlg. DlgDirList imposta il testo di questo controllo per visualizzare l'unità e la directory correnti. Questo parametro può essere zero se non si desidera visualizzare l'unità e la directory correnti.

[in] uFileType

Tipo: UINT

Specifica gli attributi dei file o delle directory da aggiungere alla casella di riepilogo. Questo parametro può essere uno o più dei valori seguenti.

Valore Significato
DDL_ARCHIVE
Include i file archiviati.
DDL_DIRECTORY
Include sottodirectory. I nomi delle sottodirectory sono racchiusi tra parentesi quadre ([ ]).
DDL_DRIVES
Tutte le unità mappate vengono aggiunte all'elenco. Le unità sono elencate nel formato [- x-], dove x è la lettera di unità.
DDL_EXCLUSIVE
Include solo i file con gli attributi specificati. Per impostazione predefinita, i file di lettura/scrittura vengono elencati anche se DDL_READWRITE non è specificato.
DDL_HIDDEN
Include file nascosti.
DDL_READONLY
Include file di sola lettura.
DDL_READWRITE
Include file di lettura/scrittura senza attributi aggiuntivi. Questa è l'impostazione predefinita.
DDL_SYSTEM
Include i file di sistema.
DDL_POSTMSGS
Se impostato, DlgDirList usa la funzione PostMessage per inviare messaggi alla casella di riepilogo. Se non è impostato, DlgDirList usa la funzione SendMessage .

Valore restituito

Tipo: int

Se la funzione ha esito positivo, il valore restituito è diverso da zero.

Se la funzione ha esito negativo, il valore restituito è zero. Ad esempio, se la stringa specificata da lpPathSpec non è un percorso valido, la funzione ha esito negativo. Per ottenere informazioni estese sull'errore, chiamare .

Osservazioni

Se lpPathSpec specifica una directory, DlgDirListComboBox modifica la directory corrente nella directory specificata prima di compilare la casella di riepilogo. Il testo del controllo statico identificato dal parametro nIDStaticPath è impostato sul nome della nuova directory corrente.

DlgDirList invia i messaggi LB_RESETCONTENT e LB_DIR alla casella di riepilogo.

Se uFileType include il flag DDL_DIRECTORY e lpPathSpec specifica una directory di primo livello, ad esempio C:\TEMP, la casella di riepilogo includerà sempre una voce ".". per la directory radice. Questo vale anche se la directory radice ha attributi nascosti o di sistema e i flag DDL_HIDDEN e DDL_SYSTEM non vengono specificati. La directory radice di un volume NTFS ha attributi nascosti e di sistema.

Nell'elenco della directory vengono visualizzati nomi file lunghi, se presenti.

Esempi

Per esempi, vedere gli argomenti seguenti: Creazione di un elenco di directory in una casella di riepilogo a selezione singola e Creazione di una casella di riepilogo a selezione multipla.

Nota

L'intestazione winuser.h definisce DlgDirList come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

Requisito Valore
client minimo supportato Windows Vista [solo app desktop]
server minimo supportato Windows Server 2003 [solo app desktop]
piattaforma di destinazione Finestre
intestazione winuser.h (include Windows.h)
libreria User32.lib
dll User32.dll

Vedere anche

DlgDirListComboBox

DlgDirSelectComboBoxEx

DlgDirSelectEx

riferimento