Partilhar via


Interface IVsProjectUpgrade

 

Implementado por objetos que precisam fazer upgrade de formatos de arquivo do projeto entre diferentes versões do Visual Studio do projeto.

Namespace:   Microsoft.VisualStudio.Shell.Interop
Assembly:  Microsoft.VisualStudio.Shell.Interop (em Microsoft.VisualStudio.Shell.Interop.dll)

Sintaxe

[InterfaceTypeAttribute(1)]
[GuidAttribute("75661D39-F5DA-41B9-ABDA-9CF54C6B1AC9")]
public interface IVsProjectUpgrade
[InterfaceTypeAttribute(1)]
[GuidAttribute("75661D39-F5DA-41B9-ABDA-9CF54C6B1AC9")]
public interface class IVsProjectUpgrade
[<InterfaceTypeAttribute(1)>]
[<GuidAttribute("75661D39-F5DA-41B9-ABDA-9CF54C6B1AC9")>]
type IVsProjectUpgrade = interface end
<InterfaceTypeAttribute(1)>
<GuidAttribute("75661D39-F5DA-41B9-ABDA-9CF54C6B1AC9")>
Public Interface IVsProjectUpgrade

Métodos

Nome Descrição
System_CAPS_pubmethod UpgradeProject(UInt32)

Chamado pelo ambiente para determinar se o objeto project precisa atualizar o projeto para uma nova versão.

Comentários

Quando um usuário tenta abrir um projeto, UpgradeProject é chamado pelo ambiente depois que o projeto é aberto e ação antes de qualquer outro usuário possa ser realizada no projeto.Se o usuário já tinha sido solicitado para atualizar a solução, em seguida, a UPF_SILENTMIGRATE sinalizador é passado a grfUpgradeFlags parâmetro.Se o usuário abrir um projeto diretamente, como em Add Existing Project, em seguida, a UPF_SILENTMIGRATE não é passado um sinalizador e precisa solicitar ao usuário para atualizar o projeto.

Em resposta para o UpgradeProject chamada, o projeto deve avaliar se o arquivo de projeto será atualizado.Se o projeto não precisa atualizar o projeto para uma nova versão, então ele pode simplesmente retornar S_OK.

Se o projeto precisa atualizar o projeto para uma nova versão, então ele deve determinar se o arquivo de projeto pode ser modificado, chamando QueryEditFiles e passando um valor de QEF_ReportOnly para o rgfQueryEdit parâmetro.Em seguida, o projeto precisa fazer o seguinte:

System_CAPS_noteObservação

Na instância do que seu primeiro projeto (Projeto1) é colocado no estado inativo, em seguida, você deve retornar S_OK da primeira chamada para seu UpgradeProject implementação.

Para um exemplo de implementação dessa interface, consulte Basic Project.

Observações para implementadores:

Se você tiver alterado as informações de implementar persistentes no arquivo de projeto entre as versões de Visual Studio mais antigos e atuais do seu produto.O ambiente recupera essa interface chamando QueryInterface de IVsHierarchy.

Consulte também

Namespace Microsoft.VisualStudio.Shell.Interop

Retornar ao topo