Partilhar via


Como: abrir editores padrão

Quando você abre um editor padrão, deixar o IDE determinar um editor padrão para um tipo de arquivo designados, em vez de especificar um editor específico do projeto para o arquivo.

Concluir o procedimento a seguir para implementar a OpenItem método. Isso abrirá um arquivo de projeto em um editor padrão.

Para implementar o método de OpenItem com um editor padrão

  1. Chame IVsRunningDocumentTable (RDT_EditLock) para determinar se o arquivo de objeto de dados do documento já está aberto.

  2. Se o arquivo já estiver aberto, repavimentar o arquivo chamando o IsDocumentOpen método, especificando um valor de IDO_ActivateIfOpen para o grfIDO parâmetro.

    Se o arquivo está aberto e o documento pertence a um projeto diferente do projeto de chamada, o seu projeto recebe um aviso de que o editor que está sendo aberto é de outro projeto. Em seguida, aparece a janela de arquivo.

  3. Se o documento não está aberto ou não na tabela documento em execução, chame o OpenStandardEditor método (OSE_ChooseBestStdEditor) para abrir um editor padrão para o arquivo.

    Quando você chama o método, o IDE realiza as seguintes tarefas:

    1. O IDE examina os editores / {guidEditorType} / subchave extensões no registro para determinar qual editor pode abrir o arquivo e tem a prioridade mais alta para fazer isso.

    2. Depois que o IDE determinou que o editor pode abrir o arquivo, o IDE chama CreateEditorInstance. Implementação do editor deste método retorna as informações necessárias para o IDE chamar CreateDocumentWindow e o documento aberto recentemente do site.

    3. Finalmente, o IDE carrega o documento usando a interface de persistência usuais, como IVsPersistDocData2.

    4. Se o IDE tiver determinado anteriormente que a hierarquia ou um item de hierarquia está disponível, o IDE chama GetItemContext método no projeto para obter um contexto de nível de projeto IServiceProvider o ponteiro passar de volta com o CreateDocumentWindow chamada de método.

  4. Retornar um IServiceProvider o ponteiro para o IDE quando o IDE chama GetItemContext em seu projeto, se você deseja permitir que o contexto de get do editor do seu projeto.

    Executar esta etapa permite que os serviços adicionais de oferta de projeto para o editor.

    Se o modo de exibição de documento ou objeto de exibição de documento com êxito foi localizado em um quadro de janela, o objeto é inicializado com seus dados chamando LoadDocData.

Consulte também

Tarefas

Como: abrir editores específicas do projeto

Como: abrir editores para documentos abertos

Referência

IServiceProvider

Conceitos

Exibindo arquivos usando o comando Abrir arquivo

Outros recursos

Abrir e salvar os itens de projeto