Mostrar archivos mediante el comando Abrir archivoDisplaying Files By Using the Open File Command

Los siguientes pasos describen cómo el IDE controla la archivos abiertos comando, que está disponible en la archivo menú en Visual StudioVisual Studio.The following steps describe how the IDE handles the Open File command, which is available on the File menu in Visual StudioVisual Studio. Los pasos también describen cómo proyectos deben responder a las llamadas que se originan en este comando.The steps also describe how projects should respond to calls that originate from this command.

Cuando un usuario hace clic en el archivos abiertos comando el archivo menú y selecciona un archivo de la archivos abiertos se produce el siguiente proceso de cuadro de diálogo.When a user clicks the Open File command on the File menu, and selects a file from the Open File dialog box, the following process occurs.

  1. Con la tabla document ejecución, el IDE determina si el archivo ya está abierto en un proyecto.Using the running document table, the IDE determines whether the file is already open in a project.

    • Si el archivo está abierto, el IDE reaparece la ventana.If the file is open, the IDE resurfaces the window.

    • Si el archivo no está abierto, el IDE llama IsDocumentInProject para consultar cada proyecto para determinar qué proyecto puede abrir el archivo.If the file is not open, the IDE calls IsDocumentInProject to query each project to determine which project can open the file.

      Nota

      En la implementación de proyecto de IsDocumentInProject, proporcione un valor de prioridad que indica el nivel en el que el proyecto abre el archivo.In your project implementation of IsDocumentInProject, provide a priority value that indicates the level at which your project opens the file. Valores de prioridad se proporcionan en el VSDOCUMENTPRIORITY enumeración.Priority values are provided in the VSDOCUMENTPRIORITY enumeration.

  2. Cada proyecto responde con un nivel de prioridad que indica la importancia coloca en la que se va al proyecto para abrir el archivo.Each project responds with a priority level that indicates the importance it places on being the project to open the file.

  3. El IDE usa los siguientes criterios para determinar qué proyecto abre el archivo:The IDE uses the following criteria to determine which project opens the file:

    • El proyecto que responde con la prioridad más alta (DP_Intrinsic) abre el archivo.The project that responds with the highest priority (DP_Intrinsic) opens the file. Si más de un proyecto responde con esta prioridad, el primer proyecto responder abre el archivo.If more than one project responds with this priority, the first project to respond opens the file.

    • Si no responde de proyecto con la prioridad más alta (DP_Intrinsic), pero responden de todos los proyectos con la prioridad mismo, inferior, el proyecto activo abre el archivo.If no project responds with the highest priority (DP_Intrinsic), but all projects respond with the same, lower priority, the active project opens the file. Si no hay ningún proyecto está activo, el primer proyecto responder abre el archivo.If no project is active, the first project to respond opens the file.

    • Si no hay ningún proyecto de notificaciones la titularidad del archivo (DP_Unsupported), el proyecto archivos varios abre el archivo.If no project claims ownership of the file (DP_Unsupported), the Miscellaneous Files project opens the file.

      Si se crea una instancia del proyecto de archivos varios, el proyecto siempre responde con el valor DP_CanAddAsExternal.If an instance of the Miscellaneous Files project is created, the project always responds with the value DP_CanAddAsExternal. Este valor indica que el proyecto puede abrir el archivo.This value indicates that the project can open the file. Este proyecto se utiliza para alojar archivos abiertos que no están en cualquier otro proyecto.This project is used to house open files that are not in any other project. La lista de elementos de este proyecto no es persistente; Este proyecto está visible en el Explorador de soluciones sólo cuando se utiliza para abrir un archivo.The list of items in this project is not persisted; this project is visible in Solution Explorer only when it is used to open a file.

      Si el proyecto archivos varios no indica que puede abrir el archivo, no se ha creado una instancia del proyecto.If the Miscellaneous Files project does not indicate that it can open the file, an instance of the project has not been created. En este caso, el IDE crea una instancia del proyecto de archivos varios e indica el proyecto para abrir el archivo.In this case, the IDE creates an instance of the Miscellaneous Files project and tells the project to open the file.

  4. Tan pronto como el IDE determina qué proyecto abre el archivo, llama a la OpenItem método en ese proyecto.As soon as the IDE determines which project opens the file, it calls the OpenItem method on that project.

  5. El proyecto, a continuación, tiene la posibilidad de abrir el archivo mediante un editor específico del proyecto o un editor estándar.The project then has the option of opening the file by using a project-specific editor or a standard editor. Para obtener más información, consulte Cómo: abrir editores específica del proyecto y Cómo: abrir editores estándar, respectivamente.For more information, see How to: Open Project-Specific Editors and How to: Open Standard Editors, respectively.

Vea tambiénSee Also

Visualización de archivos mediante el abierto con el comando Displaying Files By Using the Open With Command
Abrir y guardar elementos de proyecto Opening and Saving Project Items
Cómo: abrir editores específica del proyecto How to: Open Project-Specific Editors
Apertura de editores estándarHow to: Open Standard Editors