IVsUIShellOpenDocument.InitializeEditorInstance 方法

初始化文档编辑器的实例。

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

语法

声明
Function InitializeEditorInstance ( _
    grfIEI As UInteger, _
    punkDocView As IntPtr, _
    punkDocData As IntPtr, _
    pszMkDocument As String, _
    ByRef rguidEditorType As Guid, _
    pszPhysicalView As String, _
    ByRef rguidLogicalView As Guid, _
    pszOwnerCaption As String, _
    pszEditorCaption As String, _
    pHier As IVsUIHierarchy, _
    itemid As UInteger, _
    punkDocDataExisting As IntPtr, _
    pSPHierContext As IServiceProvider, _
    ByRef rguidCmdUI As Guid, _
    <OutAttribute> ByRef ppWindowFrame As IVsWindowFrame _
) As Integer
int InitializeEditorInstance(
    uint grfIEI,
    IntPtr punkDocView,
    IntPtr punkDocData,
    string pszMkDocument,
    ref Guid rguidEditorType,
    string pszPhysicalView,
    ref Guid rguidLogicalView,
    string pszOwnerCaption,
    string pszEditorCaption,
    IVsUIHierarchy pHier,
    uint itemid,
    IntPtr punkDocDataExisting,
    IServiceProvider pSPHierContext,
    ref Guid rguidCmdUI,
    out IVsWindowFrame ppWindowFrame
)

参数

  • punkDocView
    类型:System.IntPtr
    [in] 向文档数据对象的 IUnknown 接口的指针。
  • punkDocData
    类型:System.IntPtr
    [in] 向文档数据对象的 IUnknown 接口的指针。
  • pszMkDocument
    类型:System.String
    [in] 字符串文档的唯一标记标识符形式对项目系统,例如,完整路径到文件。在 URL 的形式,在非文件种情况下,此标识符常常是。
  • rguidEditorType
    类型:System.Guid%
    [in]编辑类型的 GUID。
  • pszPhysicalView
    类型:System.String
    [in] 物理视图的名称。
  • rguidLogicalView
    类型:System.Guid%
    [in] 标识逻辑视图的 GUID。有关逻辑上 GUIDS 列表,请参见逻辑视图和物理视图。如果实现在文档数据对象的 IVsMultiViewDocumentView ,则将传递给 rguidLogicalView 参数确定激活哪个视图,编辑窗口中显示时。,当编辑器实例化时,编辑器窗口中显示。通过指定逻辑视图 GUID, IVsUIShellOpenDocument::InitializeEditorInstance 的调用方才能够请求与该原因调用方请求视图的特定视图。例如,调用方将指定 LOGVIEWID_Debugging 获取视图适合于调试视图或 LOGVIEWID_TextView 获取视图适合于文本编辑器 (即该视图实现 IVsCodeWindow)。
  • pszOwnerCaption
    类型:System.String
    [in] 文档所有者定义的初始声明 (即项目) 文档窗口中。这通常是以下格式:“ProjectName – ItemName”。
  • pszEditorCaption
    类型:System.String
    [in] 文档窗口的文档编辑器中定义的初始声明。这通常是在方括号括起来的字符串 (例如,窗体 [])。此参数的初始值返回为 CreateEditorInstance [out] 方法的参数。
  • itemid
    类型:System.UInt32
    [in] UI 层次结构文档的项 ID 在项目系统的。有关更多信息,请参见VSITEMID。
  • punkDocDataExisting
    类型:System.IntPtr
    [in] 向文档数据对象的 IUnknown 接口的指针文档数据对象是否已存在于运行文档表。
  • rguidCmdUI
    类型:System.Guid%
    [in] 命令的命令 UI GUID。此编辑器中显示。

返回值

类型:System.Int32
如果方法成功,则返回 S_OK。如果失败,它会返回一个错误代码。

备注

COM 签名

从 vsshell.idl:

HRESULT IVsUIShellOpenDocument::InitializeEditorInstance(
   [in] VSIEIFLAGS grfIEI,
   [in] IUnknown *punkDocView,
   [in] IUnknown *punkDocData,
   [in] LPCOLESTR pszMkDocument,
   [in] REFGUID rguidEditorType,
   [in] LPCOLESTR pszPhysicalView,
   [in] REFGUID rguidLogicalView,
   [in] LPCOLESTR pszOwnerCaption,
   [in] LPCOLESTR pszEditorCaption,
   [in] IVsUIHierarchy *pHier,
   [in] VSITEMID itemid,
   [in] IUnknown *punkDocDataExisting,
   [in] IServiceProvider *pSPHierContext,
   [in] REFGUID rguidCmdUI,
   [out, retval] IVsWindowFrame **ppWindowFrame
);

编辑可用于基于文件初始化文档和非文件基于文档。由于 IVsUIShellOpenDocument.InitializeEditorInstance 采用 pszMkDocumentString 作为输入参数,此方法支持初始化基于文件的和非基于文件的编辑器。

IVsUIShellOpenDocument.InitializeEditorInstanceCreateEditorInstance调用的 helper 函数。InitializeEditorInstance 调用下列方法按顺序:

.NET Framework 安全性

请参见

参考

IVsUIShellOpenDocument 接口

Microsoft.VisualStudio.Shell.Interop 命名空间