As tabelas a seguir expandem o modelo de projeto. As tabelas apresentam breves descrições das interfaces e serviços identificados no modelo, e as interfaces e serviços associados a objetos específicos. Além disso, as tabelas detalham outras interfaces que são opcionais na criação e manutenção do projeto, dependendo dos requisitos do seu tipo de projeto específico.
Gerencia a adição e remoção de itens de projeto, abre editores e mantém o mapeamento entre cada moniker de documento e o VSITEMID. Herda de IVsProject e IVsProject2.
Permite a execução de comandos semelhante à de comandos como Recortar e Renomear que se aplicam somente quando o foco está no Gerenciador de IOleCommandTarget Soluções.
Serve como a interface de destino de comando principal para uma hierarquia de projeto. É a interface padrão para consultar objetos para seu status ou estado de comando e comandos em execução. Disponível quando você não está focado na janela Projeto.
Coordena a persistência do estado do projeto. Normalmente, o estado do projeto é armazenado como um arquivo de projeto, mas pode ser adaptado para sistemas de armazenamento que não são baseados em arquivo.
Permite que o projeto gerencie todos os aspectos de persistência de seus itens de projeto, como arquivos em disco ou objetos em outros sistemas de armazenamento. A IVsPersistHierarchyItem2 interface é usada para itens que não implementam a IVsPersistDocData2 interface.
Gerencia objetos de configuração do projeto, como configurações de Depuração/Versão. As operações de compilação, implantação e depuração são coordenadas por meio de objetos de configuração do projeto.
Implementado por hierarquias para controlar as opções de exclusão (destrutiva) ou remoção (não destrutiva) de itens de hierarquia. Chame a Interface de Consulta na interface a IVsHierarchyDeleteHandler partir da IVsHierarchy interface.
Fornece a opção de implementação de ter o objeto que oferece suporte à IVsCfgProvider2 interface em uma identidade COM diferente do objeto de projeto que implementa a IVsHierarchy interface.
Interface opcional implementada para tornar seu projeto extensível por outros desenvolvedores. A IVsProjectStartupServices interface permite que um VSPackage de terceiros registre um GUID que você persiste no arquivo de projeto para que, sempre que o projeto for carregado, você carregue o GUID de serviço de terceiros no arquivo de projeto e chame QueryService esse GUID.
Implementado por hierarquias de origem em uma UIHierarchy janela para coordenar operações da área de transferência, como recortar, copiar e colar. Use a interface para registrar eventos da AdviseClipboardHelperEvents área de transferência.
Fornece informações sobre um item arrastado em relação à sua fonte de dados durante uma operação de arrastar e soltar em uma janela de hierarquia da interface do usuário. Chamado a partir da IVsHierarchy interface.
Fornece informações sobre um item arrastado em relação ao seu destino de soltar durante uma operação de arrastar e soltar em uma janela de hierarquia da interface do usuário. Chamado a partir da IVsHierarchy interface.
Usado por VSPackages que implementam tipos de projeto para registrar que sua fábrica de projeto existe com o IDE. Seu VSPackage deve chamar QueryService para esse serviço e registrar sua fábrica de projeto quando IVsPackage::SetSite o método é chamado. Se o SetSite método não for chamado, seu projeto não será instanciado.
Fornece acesso à noção interna e interna do IDE da solução atual, como a capacidade de enumerar projetos, criar novos projetos, tomar conhecimento de alterações de projeto e assim por diante.
Fornece funcionalidade IDE básica relacionada à interface do usuário, como a capacidade de criar e enumerar janelas de ferramentas ou janelas de documentos ou relatar um erro ao usuário.
Utilizado para implementar o modelo de automação. Em seu modelo de projeto, você retornará um objeto de propriedades que permite criar uma instância desse objeto.
Usado para implementar eventos da área de transferência no objeto de projeto na hierarquia. SVsUIHierWinClipboardHelper permite manipular corretamente as operações de recortar, copiar e colar.