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

Definição

Localiza um documento no RDT usando o nome do arquivo de documento e, em seguida, obtém um bloqueio de leitura ou edição nesse documento.

public:
 int FindAndLockDocumentEx(System::UInt32 grfRDTLockType, System::String ^ pszMkDocument, Microsoft::VisualStudio::Shell::Interop::IVsHierarchy ^ pHierPreferred, System::UInt32 itemidPreferred, [Runtime::InteropServices::Out] Microsoft::VisualStudio::Shell::Interop::IVsHierarchy ^ % ppHierActual, [Runtime::InteropServices::Out] System::UInt32 % pitemidActual, [Runtime::InteropServices::Out] IntPtr % ppunkDocDataActual, [Runtime::InteropServices::Out] System::UInt32 % pdwCookie);
public int FindAndLockDocumentEx (uint grfRDTLockType, string pszMkDocument, Microsoft.VisualStudio.Shell.Interop.IVsHierarchy pHierPreferred, uint itemidPreferred, out Microsoft.VisualStudio.Shell.Interop.IVsHierarchy ppHierActual, out uint pitemidActual, out IntPtr ppunkDocDataActual, out uint pdwCookie);
abstract member FindAndLockDocumentEx : uint32 * string * Microsoft.VisualStudio.Shell.Interop.IVsHierarchy * uint32 * IVsHierarchy * uint32 * nativeint * uint32 -> int
Public Function FindAndLockDocumentEx (grfRDTLockType As UInteger, pszMkDocument As String, pHierPreferred As IVsHierarchy, itemidPreferred As UInteger, ByRef ppHierActual As IVsHierarchy, ByRef pitemidActual As UInteger, ByRef ppunkDocDataActual As IntPtr, ByRef pdwCookie As UInteger) As Integer

Parâmetros

grfRDTLockType
UInt32

no Sinalizadores cujos valores são extraídos da _VSRDTFLAGS enumeração.

pszMkDocument
String

no Caminho para o documento localizado.

pHierPreferred
IVsHierarchy

[saída, opcional] Retorna a IVsHierarchy interface preferencial para o documento localizado.

itemidPreferred
UInt32

[saída, opcional] Retorna um identificador de item do documento localizado. Esse é um identificador exclusivo ou pode ser um dos seguintes valores: VSITEMID_NIL , VSITEMID_ROOT ou VSITEMID_SELECTION .

ppHierActual
IVsHierarchy

[saída, opcional] Retorna a IVsHierarchy interface real do documento localizado.

pitemidActual
UInt32

[saída, opcional] Retorna um identificador de item do documento localizado. Esse é um identificador exclusivo ou pode ser um dos seguintes valores: VSITEMID_NIL , VSITEMID_ROOT ou VSITEMID_SELECTION .

ppunkDocDataActual
IntPtr

[saída, opcional] Retorna a IUnknown interface.

pdwCookie
UInt32

[saída, opcional] Retorna um valor abstrato para o documento.

Retornos

Int32

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

Comentários

Esse método é semelhante a FindAndLockDocument , mas também permite a especificação de um par de hierarquia/ItemId preferencial para o documento no caso de um RDT_EditLock é desejado e o documento está atualmente registrado com apenas um RDT_ReadLock sem hierarquia/ItemId atribuída. Nesse caso, FindAndLockDocument teria retornado E_UNEXPECTED. Esse método não registrará o documento na tabela do documento em execução se ele não estiver registrado no momento.

Assinatura COM

De vsshell80. idl:

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

Aplica-se a