Compartir a través de


Estructura BROWSEINFOA (shlobj_core.h)

Contiene parámetros para la función de SHBrowseForFolder y recibe información sobre la carpeta seleccionada por el usuario.

Sintaxis

typedef struct _browseinfoA {
  HWND              hwndOwner;
  PCIDLIST_ABSOLUTE pidlRoot;
  LPSTR             pszDisplayName;
  LPCSTR            lpszTitle;
  UINT              ulFlags;
  BFFCALLBACK       lpfn;
  LPARAM            lParam;
  int               iImage;
} BROWSEINFOA, *PBROWSEINFOA, *LPBROWSEINFOA;

Miembros

hwndOwner

Tipo: HWND

Identificador de la ventana de propietario del cuadro de diálogo.

pidlRoot

Tipo: PCIDLIST_ABSOLUTE

PIDL que especifica la ubicación de la carpeta raíz desde la que se va a iniciar la exploración. Solo la carpeta especificada y sus subcarpetas de la jerarquía del espacio de nombres aparecen en el cuadro de diálogo. Este miembro puede ser NULL ; en ese caso, se usa una ubicación predeterminada.

pszDisplayName

Tipo: LPTSTR de

Puntero a un búfer para recibir el nombre para mostrar de la carpeta seleccionada por el usuario. Se supone que el tamaño de este búfer es MAX_PATH caracteres.

lpszTitle

Tipo: LPCTSTR de

Puntero a una cadena terminada en null que se muestra encima del control de vista de árbol en el cuadro de diálogo. Esta cadena se puede usar para especificar instrucciones para el usuario.

ulFlags

Tipo: UINT

Marcas que especifican las opciones del cuadro de diálogo. Este miembro puede ser 0 o una combinación de los valores siguientes. Los números de versión hacen referencia a la versión mínima de Shell32.dll necesaria para SHBrowseForFolder para reconocer las marcas agregadas en versiones posteriores. Consulte Shell y Versiones de controles comunes para obtener más información.

BIF_RETURNONLYFSDIRS (0x00000001)

0x00000001. Solo devuelve directorios del sistema de archivos. Si el usuario selecciona carpetas que no forman parte del sistema de archivos, el botón Aceptar está atenuado.

Nota El botón Aceptar sigue habilitado para los elementos "\\server", así como "\\server\share" y los elementos de directorio. Sin embargo, si el usuario selecciona un elemento "\\server", se produce un error al pasar el PIDL devuelto por SHBrowseForFolder a SHGetPathFromIDList.
 

BIF_DONTGOBELOWDOMAIN (0x00000002)

0x00000002. No incluya carpetas de red por debajo del nivel de dominio en el control de vista de árbol del cuadro de diálogo.

BIF_STATUSTEXT (0x00000004)

0x00000004. Incluya un área de estado en el cuadro de diálogo. La función de devolución de llamada puede establecer el texto de estado enviando mensajes al cuadro de diálogo. Esta marca no se admite cuando se especifica BIF_NEWDIALOGSTYLE.

BIF_RETURNFSANCESTORS (0x00000008)

0x00000008. Solo devuelve antecesores del sistema de archivos. Un antecesor es una subcarpeta que está debajo de la carpeta raíz de la jerarquía del espacio de nombres. Si el usuario selecciona un antecesor de la carpeta raíz que no forma parte del sistema de archivos, el botón Aceptar está atenuado.

BIF_EDITBOX (0x00000010)

0x00000010. versión 4.71. Incluya un control de edición en el cuadro de diálogo Examinar que permita al usuario escribir el nombre de un elemento.

BIF_VALIDATE (0x00000020)

0x00000020. versión 4.71. Si el usuario escribe un nombre no válido en el cuadro de edición, el cuadro de diálogo Examinar llama al BrowseCallbackProc de la aplicación con el mensaje BFFM_VALIDATEFAILED. Esta marca se omite si no se especifica BIF_EDITBOX.

BIF_NEWDIALOGSTYLE (0x00000040)

0x00000040. versión 5.0. Use la nueva interfaz de usuario. Establecer esta marca proporciona al usuario un cuadro de diálogo más grande que se puede cambiar de tamaño. El cuadro de diálogo tiene varias funcionalidades nuevas, como la funcionalidad de arrastrar y colocar dentro del cuadro de diálogo, reordenar, menús contextuales, nuevas carpetas, eliminar y otros comandos de menú contextual.

Nota Si COM se inicializa a través de CoInitializeEx con la marca de COINIT_MULTITHREADED establecida, se produce un error en el SHBrowseForFolder si se pasa BIF_NEWDIALOGSTYLE.
 

BIF_BROWSEINCLUDEURLS (0x00000080)

0x00000080. versión 5.0. El cuadro de diálogo Examinar puede mostrar direcciones URL. También se deben establecer las marcas BIF_USENEWUI y BIF_BROWSEINCLUDEFILES. Si no se establece alguna de estas tres marcas, el cuadro de diálogo del explorador rechaza las direcciones URL. Incluso cuando se establecen estas marcas, el cuadro de diálogo Examinar solo muestra direcciones URL si la carpeta que contiene el elemento seleccionado admite direcciones URL. Cuando se llama al método IShellFolder::GetAttributesOf de la carpeta para solicitar los atributos del elemento seleccionado, la carpeta debe establecer la marca de atributo SFGAO_FOLDER. De lo contrario, el cuadro de diálogo Examinar no mostrará la dirección URL.

BIF_USENEWUI

versión 5.0. Use la nueva interfaz de usuario, incluido un cuadro de edición. Esta marca es equivalente a BIF_EDITBOX | BIF_NEWDIALOGSTYLE.

Nota Si COM se inicializa a través de CoInitializeEx con la marca de COINIT_MULTITHREADED establecida, se produce un error en el SHBrowseForFolder si se pasa BIF_USENEWUI.
 

BIF_UAHINT (0x00000100)

0x00000100. versión 6.0. Cuando se combina con BIF_NEWDIALOGSTYLE, agrega una sugerencia de uso al cuadro de diálogo, en lugar del cuadro de edición. BIF_EDITBOX invalida esta marca.

BIF_NONEWFOLDERBUTTON (0x00000200)

0x00000200. versión 6.0. No incluya el botón nueva carpeta en el cuadro de diálogo Examinar.

BIF_NOTRANSLATETARGETS (0x00000400)

0x00000400. versión 6.0. Cuando el elemento seleccionado es un acceso directo, devuelva el PIDL del propio acceso directo en lugar de su destino.

BIF_BROWSEFORCOMPUTER (0x00001000)

0x00001000. Solo devuelve equipos. Si el usuario selecciona algo distinto de un equipo, el botón Aceptar está atenuado.

BIF_BROWSEFORPRINTER (0x00002000)

0x00002000. Solo permite la selección de impresoras. Si el usuario selecciona algo distinto de una impresora, el botón Aceptar está atenuado.

En Windows XP y sistemas posteriores, el procedimiento recomendado es usar un cuadro de diálogo de estilo De Windows XP, estableciendo la raíz del cuadro de diálogo en la carpeta impresoras y faxes de (CSIDL_PRINTERS).

BIF_BROWSEINCLUDEFILES (0x00004000)

0x00004000. versión 4.71. El cuadro de diálogo Examinar muestra archivos y carpetas.

BIF_SHAREABLE (0x00008000)

0x00008000. versión 5.0. El cuadro de diálogo Examinar puede mostrar recursos que se pueden compartir en sistemas remotos. Esto está pensado para aplicaciones que quieran exponer recursos compartidos remotos en un sistema local. También se debe establecer la marca BIF_NEWDIALOGSTYLE.

BIF_BROWSEFILEJUNCTIONS (0x00010000)

0x00010000. Windows 7 y versiones posteriores. Permitir que se examinen las uniones de carpetas, como una biblioteca o un archivo comprimido con una extensión de nombre de archivo .zip.

lpfn

Tipo: BFFCALLBACK

Puntero a una función definida por la aplicación a la que el cuadro de diálogo llama cuando se produce un evento. Para obtener más información, consulte función BrowseCallbackProc. Este miembro puede ser NULL.

lParam

Tipo: LPARAM

Valor definido por la aplicación que el cuadro de diálogo pasa a la función de devolución de llamada, si se especifica uno en lpfn.

iImage

Tipo: int

Valor entero que recibe el índice de la imagen asociada a la carpeta seleccionada, almacenada en la lista de imágenes del sistema.

Observaciones

Nota

El encabezado shlobj_core.h define BROWSEINFO 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 neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Conventions for Function Prototypes.

Requisitos

Requisito Valor
cliente mínimo admitido Windows XP, Windows 7 [solo aplicaciones de escritorio]
servidor mínimo admitido Windows 2000 Server [solo aplicaciones de escritorio]
encabezado de shlobj_core.h (incluya Shlobj.h, Shlobj_core.h)