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 | |
---|---|---|
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. |
|
CancelQueryBatch() | Cancela uma seqüência em lote de consultas. |
|
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. |
|
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. |
|
HandsOnFiles(Int32, String[]) | Indica que um projeto é feito a manipulação de arquivos especificados. |
|
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.
Observaçã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