Condividi tramite


Funzione GetOpenFileNameA (commdlg.h)

[A partire da Windows Vista, le finestre di dialogo Comuni Apri e Salva con nome sono state sostituite dalla finestra di dialogo Elemento comune. È consigliabile usare l'API Finestra di dialogo elemento comune anziché queste finestre di dialogo dalla libreria delle finestre di dialogo comuni.

Crea una finestra di dialogo Apri che consente all'utente di specificare l'unità, la directory e il nome di un file o di un set di file da aprire.

Sintassi

BOOL GetOpenFileNameA(
  [in, out] LPOPENFILENAMEA unnamedParam1
);

Parametri

[in, out] unnamedParam1

Tipo: LPOPENFILENAME

Puntatore a una struttura OPENFILENAME contenente informazioni utilizzate per inizializzare la finestra di dialogo. Quando GetOpenFileName viene restituito , questa struttura contiene informazioni sulla selezione del file dell'utente.

Valore restituito

Tipo: BOOL

Se l'utente specifica un nome file e fa clic sul pulsante OK , il valore restituito è diverso da zero. Il buffer a cui punta il membro lpstrFile della struttura OPENFILENAME contiene il percorso completo e il nome file specificati dall'utente.

Se l'utente annulla o chiude la finestra di dialogo Apri o si verifica un errore, il valore restituito è zero. Per ottenere informazioni sull'errore estese, chiamare la funzione CommDlgExtendedError , che può restituire uno dei valori seguenti.

Commenti

Nella finestra di dialogo Apri in stile Esplora risorse sono disponibili funzionalità dell'interfaccia utente simili a Esplora risorse. È possibile specificare una procedura hook OFNHookProc per una finestra di dialogo Apri in stile Explorer. Per abilitare la routine hook, impostare i flag OFN_EXPLORER e OFN_ENABLEHOOK nel membro Flags della struttura OPENFILENAME e specificare l'indirizzo della routine hook nel membro lpfnHook .

Windows continua a supportare la finestra di dialogo Apri in stile precedente per le applicazioni che vogliono mantenere un'interfaccia utente coerente con l'interfaccia utente precedente. Per visualizzare la finestra di dialogo Apri in stile precedente, abilitare una routine hook OFNHookProcOldStyle e assicurarsi che il flag OFN_EXPLORER non sia impostato.

Per visualizzare una finestra di dialogo che consente all'utente di selezionare una directory anziché un file, chiamare la funzione SHBrowseForFolder .

Quando si selezionano più file, il limite di caratteri totale per i nomi di file dipende dalla versione della funzione.

  • ANSI: limite di 32k
  • Unicode: nessuna restrizione

Esempio

Per un esempio, vedere Apertura di un file.

Nota

L'intestazione commdlg.h definisce GetOpenFileName 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 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione commdlg.h (include Windows.h)
Libreria Comdlg32.lib
DLL Comdlg32.dll
Set di API ext-ms-win-shell-comdlg32-l1-1-1 (introdotto in Windows 10, versione 10.0.14393)

Vedi anche

CommDlgExtendedError

Libreria delle finestre di dialogo comuni

Informazioni concettuali

GetSaveFileName

OFNHookProc

OFNHookProcOldStyle

OPENFILENAME

Altre risorse

Riferimento

SHBrowseForFolder