Función GetOpenFileNameA (commdlg.h)

[A partir de Windows Vista, los cuadros de diálogo Abrir y Guardar como comunes se han reemplazado por el cuadro de diálogo elemento común. Se recomienda usar common Item Dialog API en lugar de estos cuadros de diálogo de la Biblioteca de cuadros de diálogo comunes.]

Crea un cuadro de diálogo Abrir que permite al usuario especificar la unidad, el directorio y el nombre de un archivo o un conjunto de archivos que se van a abrir.

Sintaxis

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

Parámetros

[in, out] unnamedParam1

Tipo: LPOPENFILENAME

Puntero a una estructura OPENFILENAME que contiene información utilizada para inicializar el cuadro de diálogo. Cuando se devuelve GetOpenFileName , esta estructura contiene información sobre la selección de archivos del usuario.

Valor devuelto

Tipo: BOOL

Si el usuario especifica un nombre de archivo y hace clic en el botón Aceptar , el valor devuelto es distinto de cero. El búfer al que apunta el miembro lpstrFile de la estructura OPENFILENAME contiene la ruta de acceso completa y el nombre de archivo especificados por el usuario.

Si el usuario cancela o cierra el cuadro de diálogo Abrir o se produce un error, el valor devuelto es cero. Para obtener información de error extendida, llame a la función CommDlgExtendedError , que puede devolver uno de los siguientes valores.

Comentarios

El cuadro de diálogo Abrir de estilo explorador proporciona características de interfaz de usuario similares al Explorador de Windows. Puede proporcionar un procedimiento de enlace OFNHookProc para un cuadro de diálogo Abrir de estilo explorador. Para habilitar el procedimiento de enlace, establezca las marcas OFN_EXPLORER y OFN_ENABLEHOOK en el miembro Flags de la estructura OPENFILENAME y especifique la dirección del procedimiento de enlace en el miembro lpfnHook .

Windows sigue admitiendo el cuadro de diálogo Abrir de estilo antiguo para las aplicaciones que quieran mantener una interfaz de usuario coherente con la interfaz de usuario de estilo anterior. Para mostrar el cuadro de diálogo Abrir de estilo anterior, habilite un procedimiento de enlace OFNHookProcOldStyle y asegúrese de que la marca de OFN_EXPLORER no esté establecida.

Para mostrar un cuadro de diálogo que permita al usuario seleccionar un directorio en lugar de un archivo, llame a la función SHBrowseForFolder .

Tenga en cuenta que, al seleccionar varios archivos, el límite total de caracteres para los nombres de archivo depende de la versión de la función.

  • ANSI: límite de 32 k
  • Unicode: sin restricción

Ejemplos

Para obtener un ejemplo, vea Abrir un archivo.

Nota

El encabezado commdlg.h define GetOpenFileName como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutro de codificación con código que no es neutral de codificación puede provocar discrepancias que dan lugar a errores de compilación o en tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado commdlg.h (incluye Windows.h)
Library Comdlg32.lib
Archivo DLL Comdlg32.dll
Conjunto de API ext-ms-win-shell-comdlg32-l1-1-1 (introducido en Windows 10, versión 10.0.14393)

Consulte también

CommDlgExtendedError

Biblioteca de cuadros de diálogo comunes

Conceptual

GetSaveFileName

OFNHookProc

OFNHookProcOldStyle

OPENFILENAME

Otros recursos

Referencia

SHBrowseForFolder