IVsRunningDocumentTable2.FindAndLockDocumentEx(UInt32, String, IVsHierarchy, UInt32, IVsHierarchy, UInt32, IntPtr, UInt32) Метод

Определение

Находит документ в RDT по имени файла документа, а затем получает блокировку чтения или редактирования этого документа.

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

Параметры

grfRDTLockType
UInt32

[in] Флаги, значения которых берутся из перечисления _VSRDTFLAGS.

pszMkDocument
String

[in] Путь к обнаруженному документу.

pHierPreferred
IVsHierarchy

[out, optional] Возвращает предпочитаемый интерфейс IVsHierarchy для найденного документа.

itemidPreferred
UInt32

[out, optional] Возвращает идентификатор элемента найденного документа. Это уникальный идентификатор или он может иметь одно из следующих значений: VSITEMID_NIL, VSITEMID_ROOT или VSITEMID_SELECTION.

ppHierActual
IVsHierarchy

[out, optional] Возвращает фактический интерфейс IVsHierarchy для найденного документа.

pitemidActual
UInt32

[out, optional] Возвращает идентификатор элемента найденного документа. Это уникальный идентификатор или он может иметь одно из следующих значений: VSITEMID_NIL, VSITEMID_ROOT или VSITEMID_SELECTION.

ppunkDocDataActual
IntPtr

[out, optional] Возвращает интерфейс IUnknown.

pdwCookie
UInt32

[out, optional] Возвращает абстрактное значение для документа.

Возвращаемое значение

Int32

Если метод завершается успешно, возвращает значение S_OK. В противном случае функция возвращает код ошибки.

Комментарии

Этот метод аналогичен, FindAndLockDocument но также позволяет использовать спецификацию предпочтительной пары "иерархия — идентификатор itemId" для документа в том случае, если требуется RDT_EditLock и документ в настоящий момент зарегистрирован только с RDT_ReadLock без назначенной иерархии или ItemId. В этом случае FindAndLockDocument возвращался E_UNEXPECTED. Этот метод не будет регистрировать документ в выполняющейся таблице документов, если он не зарегистрирован в настоящий момент.

Подпись COM

Из 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  
);  

Применяется к