IVsRunningDocumentTable.FindAndLockDocument(UInt32, String, IVsHierarchy, UInt32, IntPtr, UInt32) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
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 FindAndLockDocument(System::UInt32 dwRDTLockType, System::String ^ pszMkDocument, [Runtime::InteropServices::Out] Microsoft::VisualStudio::Shell::Interop::IVsHierarchy ^ % ppHier, [Runtime::InteropServices::Out] System::UInt32 % pitemid, [Runtime::InteropServices::Out] IntPtr % ppunkDocData, [Runtime::InteropServices::Out] System::UInt32 % pdwCookie);
public int FindAndLockDocument (uint dwRDTLockType, string pszMkDocument, out Microsoft.VisualStudio.Shell.Interop.IVsHierarchy ppHier, out uint pitemid, out IntPtr ppunkDocData, out uint pdwCookie);
abstract member FindAndLockDocument : uint32 * string * IVsHierarchy * uint32 * nativeint * uint32 -> int
Public Function FindAndLockDocument (dwRDTLockType As UInteger, pszMkDocument As String, ByRef ppHier As IVsHierarchy, ByRef pitemid As UInteger, ByRef ppunkDocData As IntPtr, ByRef pdwCookie As UInteger) As Integer
Parâmetros
- dwRDTLockType
- UInt32
no Sinalizadores cujos valores são extraídos da _VSRDTFLAGS enumeração.
- pszMkDocument
- String
no Caminho para o documento localizado.
- ppHier
- IVsHierarchy
[saída, opcional] Retorna a IVsHierarchy interface do documento localizado.
- pitemid
- 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 .
- ppunkDocData
- IntPtr
[saída, opcional] Retorna a IUnknown interface. Consulte Comentários para obter detalhes.
- pdwCookie
- UInt32
[saída, opcional] Retorna um valor abstrato para o documento.
Retornos
Se o método for bem-sucedido, retornará S_OK. Se falhar, retornará um código de erro.
Comentários
FindAndLockDocumentEx é semelhante a esse método, 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.
Para evitar um vazamento de memória, você deve chamar Release o ppunkDocData objeto retornado por esse método.
Assinatura COM
De VSShell. idl:
HRESULT IVsRunningDocumentTable::FindAndLockDocument(
[in] VSRDTFLAGS dwRDTLockType,
[in] LPCOLESTR pszMkDocument,
[out] IVsHierarchy **ppHier,
[out] VSITEMID *pitemid,
[out] IUnknown **ppunkDocData,
[out] VSCOOKIE *pdwCookie
);
Parâmetro punkDocData
Se o documento estiver registrado, o punkDocData valor retornado será sempre não nulo, pois o ambiente criará um punkDocData em nome de editores registrados com um null valor para punkDocData , como é o caso quando um editor não tem separação de dados/exibição. Este objeto representa o objeto de dados de documento associado ao documento registrado. Normalmente, as IVsPersistDocData IVsDocDataFileChangeControl interfaces e são obtidas desse IUnknown objeto.
Parâmetro pdwCookie
O pdwCookie parâmetro retorna um cookie que representa o documento. Esse cookie pode ser passado para os seguintes métodos: