Condividi tramite


Struttura OPENFILENAMEA (commdlg.h)

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

Contiene informazioni usate dalle funzioni GetOpenFileName e GetSaveFileName per inizializzare una finestra di dialogo Apri o Salva con nome. Dopo aver chiuso la finestra di dialogo, il sistema restituisce informazioni sulla selezione dell'utente in questa struttura.

Sintassi

typedef struct tagOFNA {
  DWORD         lStructSize;
  HWND          hwndOwner;
  HINSTANCE     hInstance;
  LPCSTR        lpstrFilter;
  LPSTR         lpstrCustomFilter;
  DWORD         nMaxCustFilter;
  DWORD         nFilterIndex;
  LPSTR         lpstrFile;
  DWORD         nMaxFile;
  LPSTR         lpstrFileTitle;
  DWORD         nMaxFileTitle;
  LPCSTR        lpstrInitialDir;
  LPCSTR        lpstrTitle;
  DWORD         Flags;
  WORD          nFileOffset;
  WORD          nFileExtension;
  LPCSTR        lpstrDefExt;
  LPARAM        lCustData;
  LPOFNHOOKPROC lpfnHook;
  LPCSTR        lpTemplateName;
  LPEDITMENU    lpEditInfo;
  LPCSTR        lpstrPrompt;
  void          *pvReserved;
  DWORD         dwReserved;
  DWORD         FlagsEx;
} OPENFILENAMEA, *LPOPENFILENAMEA;

Members

lStructSize

Tipo: DWORD

Lunghezza, in byte, della struttura. Usare sizeof (OPENFILENAME) per questo parametro.

hwndOwner

Tipo: HWND

Handle nella finestra che possiede la finestra di dialogo. Questo membro può essere qualsiasi handle di finestra valido oppure può essere NULL se la finestra di dialogo non ha alcun proprietario.

hInstance

Tipo: HINSTANCE

Se il flag OFN_ENABLETEMPLATEHANDLE è impostato nel membro Flags , hInstance è un handle su un oggetto memoria contenente un modello di finestra di dialogo. Se il flag OFN_ENABLETEMPLATE è impostato, hInstance è un handle su un modulo che contiene un modello di finestra di dialogo denominato dal membro lpTemplateName . Se nessun flag è impostato, questo membro viene ignorato. Se il flag di OFN_EXPLORER è impostato, il sistema usa il modello specificato per creare una finestra di dialogo figlio della finestra di dialogo Di esplorazione predefinita. Se il flag di OFN_EXPLORER non è impostato, il sistema usa il modello per creare una finestra di dialogo di stile precedente che sostituisce la finestra di dialogo predefinita.

lpstrFilter

Tipo: LPCTSTR

Buffer contenente coppie di stringhe di filtro con terminazione null. L'ultima stringa nel buffer deve essere terminata da due caratteri NULL .

La prima stringa in ogni coppia è una stringa di visualizzazione che descrive il filtro (ad esempio "File di testo") e la seconda stringa specifica il modello di filtro ,ad esempio ".TXT". Per specificare più modelli di filtro per una singola stringa di visualizzazione, usare un punto e virgola per separare i modelli , ad esempio ".TXT;.DOC;. BAK"). Una stringa di modello può essere una combinazione di caratteri di nome file validi e il carattere jolly (*) asterisco (*) . Non includere spazi nella stringa del modello.

Il sistema non modifica l'ordine dei filtri. Vengono visualizzati nella casella combinata Tipi di file nell'ordine specificato in lpstrFilter.

Se lpstrFilter è NULL, la finestra di dialogo non visualizza alcun filtro.

Nel caso di un collegamento, se non è impostato alcun filtro, GetOpenFileName e GetSaveFileName recupera il nome del file .lnk, non la destinazione. Questo comportamento corrisponde all'impostazione del flag OFN_NODEREFERENCELINKS nel membro Flags . Per recuperare la destinazione di un collegamento senza filtrare, usare la stringa "All Files\0*.*\0\0".

lpstrCustomFilter

Tipo: LPTSTR

Buffer statico che contiene una coppia di stringhe di filtro con terminazione null per mantenere il modello di filtro scelto dall'utente. La prima stringa è la stringa di visualizzazione che descrive il filtro personalizzato e la seconda stringa è il modello di filtro selezionato dall'utente. La prima volta che l'applicazione crea la finestra di dialogo, specificare la prima stringa, che può essere qualsiasi stringa non interrotta. Quando l'utente seleziona un file, la finestra di dialogo copia il modello di filtro corrente nella seconda stringa. Il modello di filtro conservato può essere uno dei modelli specificati nel buffer lpstrFilter oppure può essere un modello di filtro digitato dall'utente. Il sistema usa le stringhe per inizializzare il filtro del file definito dall'utente alla successiva creazione della finestra di dialogo. Se il membro nFilterIndex è zero, la finestra di dialogo usa il filtro personalizzato.

Se questo membro è NULL, la finestra di dialogo non mantiene i modelli di filtro definiti dall'utente.

Se questo membro non è NULL, il valore del membro nMaxCustFilter deve specificare le dimensioni, in caratteri, del buffer lpstrCustomFilter .

nMaxCustFilter

Tipo: DWORD

Dimensioni, in caratteri, del buffer identificato da lpstrCustomFilter. Questo buffer deve essere di almeno 40 caratteri. Questo membro viene ignorato se lpstrCustomFilter è NULL o punta a una stringa NULL .

nFilterIndex

Tipo: DWORD

Indice del filtro attualmente selezionato nel controllo Tipi di file . Il buffer a cui punta lpstrFilter contiene coppie di stringhe che definiscono i filtri. La prima coppia di stringhe ha un valore di indice pari a 1, la seconda coppia 2 e così via. Un indice pari a zero indica il filtro personalizzato specificato da lpstrCustomFilter. È possibile specificare un indice in input per indicare la descrizione del filtro iniziale e il modello di filtro per la finestra di dialogo. Quando l'utente seleziona un file, nFilterIndex restituisce l'indice del filtro attualmente visualizzato. Se nFilterIndex è zero e lpstrCustomFilter è NULL, il sistema usa il primo filtro nel buffer lpstrFilter . Se tutti e tre i membri sono zero o NULL, il sistema non usa filtri e non mostra alcun file nel controllo elenco di file della finestra di dialogo.

lpstrFile

Tipo: LPTSTR

Nome file usato per inizializzare il controllo Modifica nome file . Il primo carattere di questo buffer deve essere NULL se l'inizializzazione non è necessaria. Quando la funzione GetOpenFileName o GetSaveFileName restituisce correttamente, questo buffer contiene il designatore dell'unità, il percorso, il nome del file e l'estensione del file selezionato.

Se il flag OFN_ALLOWMULTISELECT è impostato e l'utente seleziona più file, il buffer contiene la directory corrente seguita dai nomi dei file selezionati. Per le finestre di dialogo in stile Esplora risorse, le stringhe di directory e nome file sono separate da NULL , con un carattere NULL aggiuntivo dopo l'ultimo nome del file. Per le finestre di dialogo in stile precedente, le stringhe sono separate e la funzione usa nomi di file brevi per i nomi di file con spazi. È possibile usare la funzione FindFirstFile per convertire tra nomi di file lunghi e brevi. Se l'utente seleziona un solo file, la stringa lpstrFile non ha un separatore tra il percorso e il nome del file.

Se il buffer è troppo piccolo, la funzione restituisce FALSE e la funzione CommDlgExtendedError restituisce FNERR_BUFFERTOOSMALL. In questo caso, i primi due byte del buffer lpstrFile contengono le dimensioni necessarie, in byte o caratteri.

nMaxFile

Tipo: DWORD

Dimensioni, in caratteri, del buffer a cui punta lpstrFile. Il buffer deve essere abbastanza grande per archiviare la stringa di percorso e il nome file o le stringhe, incluso il carattere NULL terminante. Le funzioni GetOpenFileName e GetSaveFileName restituiscono FALSE se il buffer è troppo piccolo per contenere le informazioni sul file. Il buffer deve essere di almeno 256 caratteri.

lpstrFileTitle

Tipo: LPTSTR

Nome file e estensione (senza informazioni sul percorso) del file selezionato. Questo membro può essere NULL.

nMaxFileTitle

Tipo: DWORD

Dimensioni, in caratteri, del buffer a cui punta lpstrFileTitle. Questo membro viene ignorato se lpstrFileTitle è NULL.

lpstrInitialDir

Tipo: LPCTSTR

Directory iniziale. L'algoritmo per la selezione della directory iniziale varia in piattaforme diverse.

Windows 7:

  1. Se lpstrInitialDir ha lo stesso valore passato la prima volta che l'applicazione ha usato una finestra di dialogo Apri o Salva con nome, il percorso selezionato più di recente dall'utente viene usato come directory iniziale.
  2. In caso contrario, se lpstrFile contiene un percorso, tale percorso è la directory iniziale.
  3. In caso contrario, se lpstrInitialDir non è NULL, specifica la directory iniziale.
  4. Se lpstrInitialDir è NULL e la directory corrente contiene tutti i file dei tipi di filtro specificati, la directory iniziale è la directory corrente.
  5. In caso contrario, la directory iniziale è la directory dei file personali dell'utente corrente.
  6. In caso contrario, la directory iniziale è la cartella Desktop.
Windows 2000/XP/Vista:
  1. Se lpstrFile contiene un percorso, tale percorso è la directory iniziale.
  2. In caso contrario, lpstrInitialDir specifica la directory iniziale.
  3. In caso contrario, se l'applicazione ha usato una finestra di dialogo Apri o Salva con nome in passato, il percorso usato più di recente viene selezionato come directory iniziale. Tuttavia, se un'applicazione non viene eseguita per molto tempo, il percorso selezionato salvato viene rimosso.
  4. Se lpstrInitialDir è NULL e la directory corrente contiene tutti i file dei tipi di filtro specificati, la directory iniziale è la directory corrente.
  5. In caso contrario, la directory iniziale è la directory dei file personali dell'utente corrente.
  6. In caso contrario, la directory iniziale è la cartella Desktop.

lpstrTitle

Tipo: LPCTSTR

Stringa da inserire nella barra del titolo della finestra di dialogo. Se questo membro è NULL, il sistema usa il titolo predefinito, ovvero Salva con nome o Apri.

Flags

Tipo: DWORD

Un set di flag di bit che è possibile usare per inizializzare la finestra di dialogo. Quando la finestra di dialogo restituisce, imposta questi flag per indicare l'input dell'utente. Questo membro può essere una combinazione dei flag seguenti.

Valore Significato
OFN_ALLOWMULTISELECT
0x00000200
La casella di riepilogo Nome file consente più selezioni. Se si imposta anche il flag di OFN_EXPLORER , la finestra di dialogo usa l'interfaccia utente in stile Esplora; in caso contrario, usa l'interfaccia utente in stile precedente.

Se l'utente seleziona più file, il buffer lpstrFile restituisce il percorso della directory corrente seguita dai nomi di file dei file selezionati. Il membro nFileOffset è l'offset, in byte o caratteri, al nome del primo file e il membro nFileExtension non viene usato. Per le finestre di dialogo in stile Esplora risorse, le stringhe di directory e nome file sono separate da NULL , con un carattere NULL aggiuntivo dopo l'ultimo nome del file. Questo formato consente alle finestre di dialogo di Esplora finestre di dialogo di restituire nomi di file lunghi che includono spazi. Per le finestre di dialogo in stile precedente, le stringhe di directory e nome file sono separate da spazi e la funzione usa nomi di file brevi per i nomi di file con spazi. È possibile usare la funzione FindFirstFile per convertire tra nomi di file lunghi e brevi.

Se si specifica un modello personalizzato per una finestra di dialogo in stile precedente, la definizione della casella di riepilogo Nome file deve contenere il valore LBS_EXTENDEDSEL .

OFN_CREATEPROMPT
0x00002000
Se l'utente specifica un file che non esiste, questo flag determina che la finestra di dialogo richiede all'utente l'autorizzazione per creare il file. Se l'utente sceglie di creare il file, la finestra di dialogo chiude e la funzione restituisce il nome specificato; in caso contrario, la finestra di dialogo rimane aperta. Se si usa questo flag con il flag OFN_ALLOWMULTISELECT , la finestra di dialogo consente all'utente di specificare un solo file inesistente.
OFN_DONTADDTORECENT
0x02000000
Impedisce al sistema di aggiungere un collegamento al file selezionato nella directory del file system contenente i documenti usati più di recente dall'utente. Per recuperare il percorso di questa directory, chiamare la funzione SHGetSpecialFolderLocation con il flag CSIDL_RECENT .
OFN_ENABLEHOOK
0x00000020
Abilita la funzione hook specificata nel membro lpfnHook .
OFN_ENABLEINCLUDENOTIFY
0x00400000
Causa l'invio di messaggi di notifica CDN_INCLUDEITEM alla routine di hook OFNHookProc quando l'utente apre una cartella. La finestra di dialogo invia una notifica per ogni elemento nella cartella appena aperta. Questi messaggi consentono di controllare gli elementi visualizzati nella finestra di dialogo nell'elenco elementi della cartella.
OFN_ENABLESIZING
0x00800000
Consente di ridimensionare la finestra di dialogo Esplora risorse usando il mouse o la tastiera. Per impostazione predefinita, le finestre di dialogo Apri e Salva con nome consentono di ridimensionare la finestra di dialogo indipendentemente dal fatto che questo flag sia impostato. Questo flag è necessario solo se si specifica una routine di hook o un modello personalizzato. La finestra di dialogo precedente non consente il ridimensionamento.
OFN_ENABLETEMPLATE
0x00000040
Il membro lpTemplateName è un puntatore al nome di una risorsa modello di dialogo nel modulo identificato dal membro hInstance . Se il flag di OFN_EXPLORER è impostato, il sistema usa il modello specificato per creare una finestra di dialogo figlio della finestra di dialogo Di esplorazione predefinita. Se il flag di OFN_EXPLORER non è impostato, il sistema usa il modello per creare una finestra di dialogo di stile precedente che sostituisce la finestra di dialogo predefinita.
OFN_ENABLETEMPLATEHANDLE
0x00000080
Il membro hInstance identifica un blocco di dati contenente un modello di finestra di dialogo precaricati. Il sistema ignora lpTemplateName se questo flag è specificato. Se il flag di OFN_EXPLORER è impostato, il sistema usa il modello specificato per creare una finestra di dialogo figlio della finestra di dialogo Di esplorazione predefinita. Se il flag di OFN_EXPLORER non è impostato, il sistema usa il modello per creare una finestra di dialogo di stile precedente che sostituisce la finestra di dialogo predefinita.
OFN_EXPLORER
0x00080000
Indica che tutte le personalizzazioni effettuate nella finestra di dialogo Apri o Salva con nome usano i metodi di personalizzazione in stile Esplora risorse. Per altre informazioni, vedere Procedure di hook in stile Explorer e modelli personalizzati in stile Esplora risorse.

Per impostazione predefinita, le finestre di dialogo Apri e Salva con nome usano l'interfaccia utente in stile Esplora indipendentemente dal fatto che questo flag sia impostato. Questo flag è necessario solo se si specifica una routine di hook o un modello personalizzato o impostare il flag di OFN_ALLOWMULTISELECT .

Se si vuole che l'interfaccia utente in stile precedente ometta il flag di OFN_EXPLORER e fornisca un modello di tipo precedente o una procedura di hook sostitutiva. Se si vuole lo stile precedente, ma non è necessario un modello personalizzato o una procedura di hook, è sufficiente fornire una procedura di hook che restituisce sempre FALSE.

OFN_EXTENSIONDIFFERENT
0x00000400
L'utente digita un'estensione del nome file diversa dall'estensione specificata da lpstrDefExt. La funzione non usa questo flag se lpstrDefExt è NULL.
OFN_FILEMUSTEXIST
0x00001000
L'utente può digitare solo nomi di file esistenti nel campo Voce Nome file . Se questo flag viene specificato e l'utente immette un nome non valido, la finestra di dialogo visualizza un avviso in una finestra di messaggio. Se viene specificato questo flag, viene usato anche il flag OFN_PATHMUSTEXIST . Questo flag può essere usato in una finestra di dialogo Apri . Non può essere usato con una finestra di dialogo Salva con nome.
OFN_FORCESHOWHIDDEN
0x10000000
Forza la visualizzazione dei file nascosti e del sistema, quindi l'override dell'impostazione utente per visualizzare o non visualizzare i file nascosti. Tuttavia, non viene visualizzato un file contrassegnato sia dal sistema che dal nascosto.
OFN_HIDEREADONLY
0x00000004
Nasconde la casella di controllo Sola lettura .
OFN_LONGNAMES
0x00200000
Per le finestre di dialogo in stile precedente, questo flag causa l'uso dei nomi di file lunghi nella finestra di dialogo. Se questo flag non è specificato o se il flag di OFN_ALLOWMULTISELECT è impostato anche, le finestre di dialogo in stile precedente usano nomi di file brevi (formato 8.3) per i nomi di file con spazi. Le finestre di dialogo di Esplora risorse ignorano questo flag e visualizzano sempre nomi di file lunghi.
OFN_NOCHANGEDIR
0x00000008
Ripristina la directory corrente al relativo valore originale se l'utente ha modificato la directory durante la ricerca di file.

Questo flag è inefficace per GetOpenFileName.

OFN_NODEREFERENCELINKS
0x00100000
Indirizza la finestra di dialogo per restituire il percorso e il nome del file del collegamento selezionato (. File LNK). Se questo valore non è specificato, la finestra di dialogo restituisce il percorso e il nome del file a cui fa riferimento il collegamento.
OFN_NOLONGNAMES
0x00040000
Per le finestre di dialogo in stile precedente, questo flag causa l'uso dei nomi di file brevi (formato 8.3). Le finestre di dialogo di Esplora risorse ignorano questo flag e visualizzano sempre nomi di file lunghi.
OFN_NONETWORKBUTTON
0x00020000
Nasconde e disabilita il pulsante Rete .
OFN_NOREADONLYRETURN
0x00008000
Il file restituito non ha la casella di controllo Sola lettura selezionata e non è in una directory protetta da scrittura.
OFN_NOTESTFILECREATE
0x00010000
Il file non viene creato prima della chiusura della finestra di dialogo. Questo flag deve essere specificato se l'applicazione salva il file in una condivisione di rete create-nonmodifica. Quando un'applicazione specifica questo flag, la libreria non verifica la protezione in scrittura, un disco completo, una porta di unità aperta o una protezione di rete. Le applicazioni che usano questo flag devono eseguire attentamente operazioni di file, perché non è possibile riaprire un file dopo la chiusura.
OFN_NOVALIDATE
0x00000100
Le finestre di dialogo comuni consentono caratteri non validi nel nome del file restituito. In genere, l'applicazione chiamante usa una routine di hook che controlla il nome del file usando il messaggio FILEOKSTRING . Se la casella di testo nel controllo di modifica è vuota o contiene nulla, gli elenchi di file e directory vengono aggiornati. Se la casella di testo nel controllo di modifica contiene qualsiasi altro elemento, nFileOffset e nFileExtension vengono impostati su valori generati analizzando il testo. Nessuna estensione predefinita viene aggiunta al testo, né viene copiato il testo nel buffer specificato da lpstrFileTitle. Se il valore specificato da nFileOffset è minore di zero, il nome del file non è valido. In caso contrario, il nome del file è valido e nFileExtension e nFileOffset possono essere usati come se il flag OFN_NOVALIDATE non fosse stato specificato.
OFN_OVERWRITEPROMPT
0x00000002
Fa sì che la finestra di dialogo Salva con nome generi una finestra di messaggio se il file selezionato esiste già. L'utente deve confermare se sovrascrivere il file.
OFN_PATHMUSTEXIST
0x00000800
L'utente può digitare solo percorsi e nomi di file validi. Se questo flag viene usato e l'utente digita un percorso non valido e un nome file nel campo Voce Nome file, la funzione della finestra di dialogo visualizza un avviso in una finestra di messaggio.
OFN_READONLY
0x00000001
Consente di selezionare inizialmente la casella di controllo Sola lettura quando viene creata la finestra di dialogo. Questo flag indica lo stato della casella di controllo Sola lettura quando la finestra di dialogo viene chiusa.
OFN_SHAREAWARE
0x00004000
Specifica che se una chiamata alla funzione OpenFile ha esito negativo a causa di una violazione della condivisione di rete, l'errore viene ignorato e la finestra di dialogo restituisce il nome del file selezionato. Se questo flag non è impostato, la finestra di dialogo notifica alla procedura di hook quando si verifica una violazione della condivisione di rete per il nome del file specificato dall'utente. Se si imposta il flag di OFN_EXPLORER , la finestra di dialogo invia il messaggio CDN_SHAREVIOLATION alla procedura di hook. Se non si imposta OFN_EXPLORER, la finestra di dialogo invia il messaggio registrato SHAREVISTRING alla procedura di hook.
OFN_SHOWHELP
0x00000010
Fa sì che la finestra di dialogo visualizzi il pulsante Guida . Il membro hwndOwner deve specificare la finestra per ricevere i messaggi registrati HELPMSGSTRING inviati dalla finestra di dialogo quando l'utente fa clic sul pulsante Guida . Una finestra di dialogo Esplora risorse invia un messaggio di notifica CDN_HELP alla procedura di hook quando l'utente fa clic sul pulsante Guida .

nFileOffset

Tipo: WORD

Offset in base zero, in caratteri, dall'inizio del percorso al nome del file nella stringa a cui punta lpstrFile. Per la versione ANSI, si tratta del numero di byte; per la versione Unicode, si tratta del numero di caratteri. Ad esempio, se lpstrFile punta alla stringa seguente, "c:\dir1\dir2\file.ext", questo membro contiene il valore 13 per indicare l'offset della stringa "file.ext". Se l'utente seleziona più file, nFileOffset è l'offset al nome del primo file.

nFileExtension

Tipo: WORD

Offset in base zero, in caratteri, dall'inizio del percorso all'estensione del nome file nella stringa a cui punta lpstrFile. Per la versione ANSI, si tratta del numero di byte; per la versione Unicode, si tratta del numero di caratteri. In genere l'estensione del nome file è la sottostringa che segue l'ultima occorrenza del carattere dot ("."). Ad esempio, txt è l'estensione del nome file readme.txt, html l'estensione di readme.txt.html. Pertanto, se lpstrFile punta alla stringa "c:\dir1\dir2\readme.txt", questo membro contiene il valore 20. Se lpstrFile punta alla stringa "c:\dir1\dir2\readme.txt.html", questo membro contiene il valore 24. Se lpstrFile punta alla stringa "c:\dir1\dir2\readme.txt.html.", questo membro contiene il valore 29. Se lpstrFile punta a una stringa che non contiene alcun carattere "." come "c:\dir1\dir2\readme", questo membro contiene zero.

lpstrDefExt

Tipo: LPCTSTR

Estensione predefinita. GetOpenFileName e GetSaveFileName aggiunge questa estensione al nome del file se l'utente non riesce a digitare un'estensione. Questa stringa può essere qualsiasi lunghezza, ma vengono accodati solo i primi tre caratteri. La stringa non deve contenere un punto (.). Se questo membro è NULL e l'utente non digita un'estensione, non viene aggiunta alcuna estensione.

lCustData

Tipo: LPARAM

Dati definiti dall'applicazione che il sistema passa alla procedura di hook identificata dal membro lpfnHook . Quando il sistema invia il messaggio di WM_INITDIALOG alla procedura di hook, il parametro lParam del messaggio è un puntatore alla struttura OPENFILENAME specificata al momento della creazione della finestra di dialogo. La procedura di hook può usare questo puntatore per ottenere il valore lCustData .

lpfnHook

Tipo: LPOFNHOOKPROC

Puntatore a una procedura di hook. Questo membro viene ignorato a meno che il membro Flags includa il flag di OFN_ENABLEHOOK .

Se il flag OFN_EXPLORER non è impostato nel membro Flags , lpfnHook è un puntatore a una routine di hook OFNHookProcOldStyle che riceve i messaggi destinati alla finestra di dialogo. La procedura di hook restituisce FALSE per passare un messaggio alla procedura predefinita della finestra di dialogo o TRUE per eliminare il messaggio.

Se OFN_EXPLORER è impostato, lpfnHook è un puntatore a una routine di hook OFNHookProc . La procedura di hook riceve messaggi di notifica inviati dalla finestra di dialogo. La procedura di hook riceve anche messaggi per eventuali controlli aggiuntivi definiti specificando un modello di finestra di dialogo figlio. La procedura di hook non riceve messaggi destinati ai controlli standard della finestra di dialogo predefinita.

lpTemplateName

Tipo: LPCTSTR

Nome della risorsa modello di dialogo nel modulo identificato dal membro hInstance . Per le risorse della finestra di dialogo numerate, questo può essere un valore restituito dalla macro MAKEINTRESOURCE . Questo membro viene ignorato a meno che il flag di OFN_ENABLETEMPLATE non sia impostato nel membro Flags . Se il flag di OFN_EXPLORER è impostato, il sistema usa il modello specificato per creare una finestra di dialogo figlio della finestra di dialogo Di esplorazione predefinita. Se il flag di OFN_EXPLORER non è impostato, il sistema usa il modello per creare una finestra di dialogo di stile precedente che sostituisce la finestra di dialogo predefinita.

lpEditInfo

Questo membro viene compilato in modo condizionale (usando #ifdef _MAC) in modo che sia applicabile solo ai computer Motorola 68K Macintosh e non ai sistemi operativi client Windows.

lpstrPrompt

Questo membro viene compilato in modo condizionale (usando #ifdef _MAC) in modo che sia applicabile solo ai computer Motorola 68K Macintosh e non ai sistemi operativi client Windows.

pvReserved

Tipo: void*

Questo membro è riservato.

dwReserved

Tipo: DWORD

Questo membro è riservato.

FlagsEx

Tipo: DWORD

Un set di flag di bit che è possibile usare per inizializzare la finestra di dialogo. Attualmente, questo membro può essere zero o il flag seguente.

Valore Significato
OFN_EX_NOPLACESBAR
0x00000001
Se questo flag è impostato, la barra delle posizioni non viene visualizzata. Se questo flag non è impostato, le finestre di dialogo in stile Explorer includono una barra delle posizioni contenente icone per le cartelle comunemente usate, ad esempio Preferiti e Desktop.

Commenti

Per motivi di compatibilità, la barra dei punti è nascosta se flag è impostato su OFN_ENABLEHOOK e lStructSize è OPENFILENAME_SIZE_VERSION_400.

Nota

L'intestazione commdlg.h definisce OPENFILENAME come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante preprocessore UNICODE. La combinazione dell'utilizzo dell'alias di codifica neutrale con il codice che non è neutrale dalla codifica può causare errori di corrispondenza che causano errori di compilazione o runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzione.

Requisiti

   
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Intestazione commdlg.h (includere Windows.h)

Vedi anche

Libreria di finestre di dialogo comuni

Informazioni concettuali

Getopenfilename

GetSaveFileName

Altre risorse

Riferimento

SHGetSpecialFolderLocation