Compartilhar via


Interface IVsTrackProjectDocuments3

 

Essa interface permite para coordenação de bloqueios em arquivos e uma avançada, processamento em lotes OnQueryAddFiles método.

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

Sintaxe

[GuidAttribute("53544C4D-9097-4325-9270-754EB85A6351")]
[InterfaceTypeAttribute(1)]
public interface IVsTrackProjectDocuments3
[GuidAttribute("53544C4D-9097-4325-9270-754EB85A6351")]
[InterfaceTypeAttribute(1)]
public interface class IVsTrackProjectDocuments3
[<GuidAttribute("53544C4D-9097-4325-9270-754EB85A6351")>]
[<InterfaceTypeAttribute(1)>]
type IVsTrackProjectDocuments3 = interface end
<GuidAttribute("53544C4D-9097-4325-9270-754EB85A6351")>
<InterfaceTypeAttribute(1)>
Public Interface IVsTrackProjectDocuments3

Métodos

Nome Descrição
System_CAPS_pubmethod BeginQueryBatch()

Inicia um processo de consulta em lotes no qual uma única caixa de diálogo perguntando ao usuário para um certo é apresentada em vez de várias caixas de diálogo, uma para cada arquivo.

System_CAPS_pubmethod CancelQueryBatch()

Cancela uma seqüência em lote de consultas.

System_CAPS_pubmethod EndQueryBatch(Int32)

Indica que um processo de consulta em lote foi concluído e determina se ou não as operações em lote pode continuar.

System_CAPS_pubmethod HandsOffFiles(UInt32, Int32, String[])

Esse método é chamado quando um projeto deseja afetar um número de arquivos e deseja que qualquer bloqueios nesses arquivos liberado.

System_CAPS_pubmethod HandsOnFiles(Int32, String[])

Indica que um projeto é feito a manipulação de arquivos especificados.

System_CAPS_pubmethod OnQueryAddFilesEx(IVsProject, Int32, String[], String[], VSQUERYADDFILEFLAGS[], VSQUERYADDFILERESULTS[], VSQUERYADDFILERESULTS[])

Este método é uma versão estendida da OnQueryAddFiles método e é usado quando um projeto irá mover arquivos para um novo local no diretório do projeto.

Comentários

A versão avançada da OnQueryAddFiles método oferece suporte a projetos que copiar arquivos para novos locais no diretório do projeto após a extração do controle de origem.

Os métodos de processo em lote devem ser equilibrados; ou seja, cada chamada para o BeginQueryBatch método ser correspondido com uma chamada para o EndQueryBatch método ou a CancelQueryBatch método.Os métodos de processo em lotes são usados para que o usuário é apresentado com uma única caixa de diálogo sobre a operação em todos os arquivos em vez de várias caixas de diálogo, uma para cada arquivo.Se qualquer consulta diz que não é correto continuar a operação, o CancelQueryBatch deve ser chamado para cancelar a operação de lote completo.Caso contrário, se todas as consultas indicam é OK continuar, o EndQueryBatch método deve ser chamado.Por exemplo:

BOOL fRenameCanCont = FALSE;
pTrackProjectDocuments3->BeginQueryBatch();
QueryFolderRename(pFolderNode, strOldPath, strNewPath, &fRenameCanCont);
if (fRenameCanCont)
   pTrackProjectDocuments3->EndQueryBatch(&fRenameCanCont);
else
   pTrackProjectDocuments3->CancelQueryBatch();
bool fRenameCanCont = false;
pTrackProjectDocuments3.BeginQueryBatch();
QueryFolderRename(pFolderNode, strOldPath, strNewPath, fRenameCanCont);
if (fRenameCanCont)
   pTrackProjectDocuments3.EndQueryBatch(&fRenameCanCont);
else
   pTrackProjectDocuments3.CancelQueryBatch();

Neste exemplo, QueryFolderRename será considerado uma função definida pelo usuário auxiliar que faz com que uma série de eventos para chamar repetidamente o OnQueryRenameFile método.

Observações para implementadores:

Essa interface é implementada pelo pacote de controle de origem Visual Studio.Visual Studio roteia chamadas para esta interface para o pacote de controle de origem ativo no momento, se esse pacote implementa o IVsTrackProjectDocumentsEvents3 interface.

System_CAPS_noteObservação

Esta interface não é derivada de IVsTrackProjectDocuments2 interface, embora ele é normalmente implementado no mesmo objeto.O IVsTrackProjectDocuments3 interface pode ser obtido por pedir a ele partir de SVsTrackProjectDocuments service.

Observações para chamadores:

Essa interface fornece um mecanismo de processamento em lote que permita que acessa um sistema de controle de origem sem precisar fornecer um prompt para cada arquivo individual.Além disso, essa interface sincroniza o acesso de leitura/gravação a arquivos e fornece uma extensão para o OnQueryAddFiles método.

Consulte também

Namespace Microsoft.VisualStudio.Shell.Interop

Retornar ao topo