Condividi tramite


Funzione DlgDirSelectExA (winuser.h)

Recupera la selezione corrente da una casella di riepilogo a selezione singola. Si presuppone che la casella di riepilogo sia stata compilata dalla funzione DlgDirList e che la selezione sia una lettera di unità, un nome file o un nome di directory.

Sintassi

BOOL DlgDirSelectExA(
  [in]  HWND  hwndDlg,
  [out] LPSTR lpString,
  [in]  int   chCount,
  [in]  int   idListBox
);

Parametri

[in] hwndDlg

Tipo: HWND

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

[out] lpString

Tipo: LPTSTR

Puntatore a un buffer che riceve il percorso selezionato.

[in] chCount

Tipo: int

Lunghezza, in TCHAR, del buffer a cui punta lpString.

[in] idListBox

Tipo: int

Identificatore di una casella di riepilogo nella finestra di dialogo.

Valore restituito

Tipo: BOOL

Se la selezione corrente è un nome di directory, il valore restituito è diverso da zero.

Se la selezione corrente non è un nome di directory, il valore restituito è zero. Per informazioni dettagliate sull'errore, chiamare GetLastError.

Commenti

La funzione DlgDirSelectEx copia la selezione nel buffer a cui punta il parametro lpString . Se la selezione corrente è un nome di directory o una lettera di unità, DlgDirSelectEx rimuove le parentesi quadre racchiuse (e trattini, per le lettere di unità), in modo che il nome o la lettera sia pronto per essere inserito in un nuovo percorso. Se non è presente alcuna selezione, lpString non cambia.

Se la stringa è lunga o più lunga del buffer, il buffer conterrà la stringa troncata con un carattere Null di terminazione.

DlgDirSelectEx invia messaggi LB_GETCURSEL e LB_GETTEXT alla casella di riepilogo. La funzione non consente la restituzione di più nomi di file da una casella di riepilogo. La casella di riepilogo non deve essere una casella di riepilogo a selezione multipla. In caso affermativo, questa funzione non restituisce un valore zero e lpString rimane invariata.

Windows 95 o versione successiva: DlgDirSelectExW è supportato da Microsoft Layer per Unicode. Per usarlo, è necessario aggiungere determinati file all'applicazione, come descritto in Microsoft Layer per Unicode nei sistemi Windows Me/98/95.

Esempio

Per un esempio, vedere Creazione di un elenco di directory in una casella di riepilogo a selezione singola.

Nota

L'intestazione winuser.h definisce DlgDirSelectEx 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 che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione winuser.h (include Windows.h)
Libreria User32.lib
DLL User32.dll

Vedi anche

DlgDirList

DlgDirListComboBox

DlgDirSelectComboBoxEx

LB_GETCURSEL

LB_GETTEXT

Riferimento