Método IVsRunningDocumentTable2.FindOrRegisterAndLockDocument (UInt32, String, IVsHierarchy, UInt32, IntPtr, IVsHierarchy, UInt32, IntPtr, UInt32)

 

Publicado: abril de 2016

Adiciona um bloqueio para um documento registrado ou não registrado.

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

Sintaxe

int FindOrRegisterAndLockDocument(
    uint grfRDTLockType,
    string pszMkDocument,
    IVsHierarchy pHierPreferred,
    uint itemidPreferred,
    IntPtr punkDocData,
    out IVsHierarchy ppHierActual,
    out uint pitemidActual,
    out IntPtr ppunkDocDataActual,
    out uint pdwCookie
)
int FindOrRegisterAndLockDocument(
    unsigned int grfRDTLockType,
    String^ pszMkDocument,
    IVsHierarchy^ pHierPreferred,
    unsigned int itemidPreferred,
    IntPtr punkDocData,
    [OutAttribute] IVsHierarchy^% ppHierActual,
    [OutAttribute] unsigned int% pitemidActual,
    [OutAttribute] IntPtr% ppunkDocDataActual,
    [OutAttribute] unsigned int% pdwCookie
)
abstract FindOrRegisterAndLockDocument : 
        grfRDTLockType:uint32 *
        pszMkDocument:string *
        pHierPreferred:IVsHierarchy *
        itemidPreferred:uint32 *
        punkDocData:nativeint *
        ppHierActual:IVsHierarchy byref *
        pitemidActual:uint32 byref *
        ppunkDocDataActual:nativeint byref *
        pdwCookie:uint32 byref -> int
Function FindOrRegisterAndLockDocument (
    grfRDTLockType As UInteger,
    pszMkDocument As String,
    pHierPreferred As IVsHierarchy,
    itemidPreferred As UInteger,
    punkDocData As IntPtr,
    <OutAttribute> ByRef ppHierActual As IVsHierarchy,
    <OutAttribute> ByRef pitemidActual As UInteger,
    <OutAttribute> ByRef ppunkDocDataActual As IntPtr,
    <OutAttribute> ByRef pdwCookie As UInteger
) As Integer

Parâmetros

  • grfRDTLockType
    [in] Sinalizadores cujos valores são obtidos a partir do _VSRDTFLAGS enumeração.
  • pszMkDocument
    [in] Caminho para o documento localizado.
  • pHierPreferred
    [out, opcional] Retorna preferida a IVsHierarchy interface para o documento localizado.
  • itemidPreferred
    [out, opcional] Retorna um identificador de item do documento localizado.Este é um identificador exclusivo ou pode ser um dos seguintes valores: VSITEMID_NIL, VSITEMID_ROOT, ou VSITEMID_SELECTION.
  • punkDocData
    [out, opcional] Retorna o IUnknown interface.
  • ppHierActual
    [out, opcional] Retorna o real IVsHierarchy interface para o documento localizado.
  • ppunkDocDataActual
    [out, opcional] Retorna o IUnknown interface.
  • pdwCookie
    [out, opcional] Retorna um valor abstrato para o documento.

Valor de retorno

Type: System.Int32

Se o método for bem-sucedido, ele retorna S_OK.Se ele falhar, ele retorna um código de erro.

Comentários

Esse método lida com todos os casos, para adicionar um bloqueio a um documento, se o documento já está registrado ou não.Este é um método de conveniência que combina a funcionalidade de RegisterAndLockDocument e FindAndLockDocumentEx.RegisterAndLockDocumentRetorna um erro se o documento já está registrado.FindAndLockDocumentExRetorna um erro se não estiver registrado.Em casos onde uma RDT_EditLock for desejado e o documento está registrado apenas com um RDT_ReadLock com nenhuma pHier/itemid atribuída, esta função irá atribuir o pHier/itemid preferencial ao documento.

COM assinatura

De vsshell80.idl:

HRESULT FindOrRegisterAndLockDocument(
    [in] VSRDTFLAGS grfRDTLockType,
    [in] LPCOLESTR pszMkDocument,
    [in] IVsHierarchy *pHierPreferred,
    [in] VSITEMID itemidPreferred,
    [in] IUnknown *punkDocData,
    [out] IVsHierarchy **ppHierActual,
    [out] VSITEMID *pitemidActual,
    [out] IUnknown **ppunkDocDataActual,
    [out] VSCOOKIE *pdwCookie
);

Consulte também

Interface IVsRunningDocumentTable2
Namespace Microsoft.VisualStudio.Shell.Interop

Retornar ao topo