IVsRunningDocumentTable2.FindAndLockDocumentEx 方法

使用文档文件名,查找文档 RDT,然后获取读取或编辑该锁文档。

命名空间:  Microsoft.VisualStudio.Shell.Interop
程序集:  Microsoft.VisualStudio.Shell.Interop.8.0(在 Microsoft.VisualStudio.Shell.Interop.8.0.dll 中)

语法

声明
Function FindAndLockDocumentEx ( _
    grfRDTLockType As UInteger, _
    pszMkDocument As String, _
    pHierPreferred As IVsHierarchy, _
    itemidPreferred As UInteger, _
    <OutAttribute> ByRef ppHierActual As IVsHierarchy, _
    <OutAttribute> ByRef pitemidActual As UInteger, _
    <OutAttribute> ByRef ppunkDocDataActual As IntPtr, _
    <OutAttribute> ByRef pdwCookie As UInteger _
) As Integer
int FindAndLockDocumentEx(
    uint grfRDTLockType,
    string pszMkDocument,
    IVsHierarchy pHierPreferred,
    uint itemidPreferred,
    out IVsHierarchy ppHierActual,
    out uint pitemidActual,
    out IntPtr ppunkDocDataActual,
    out uint pdwCookie
)

参数

  • pszMkDocument
    类型:System.String
    [in] 所在的路径文档。
  • ppunkDocDataActual
    类型:System.IntPtr%
    [out, optional] 返回 IUnknown 接口。
  • pdwCookie
    类型:System.UInt32%
    [out, optional] 返回文档的抽象值。

返回值

类型:System.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
);

.NET Framework 安全性

请参见

参考

IVsRunningDocumentTable2 接口

Microsoft.VisualStudio.Shell.Interop 命名空间