IVsAsyncShellOpenDocument.OpenDocumentViaProjectWithSpecificAsync 方法

定义

查找用于打开此文档的指定项目。

public Microsoft.VisualStudio.Shell.Interop.IVsTask OpenDocumentViaProjectWithSpecificAsync (string documentMoniker, uint specificEditorFlags, Guid editorType, string? physicalView, Guid logicalView);
abstract member OpenDocumentViaProjectWithSpecificAsync : string * uint32 * Guid * string * Guid -> Microsoft.VisualStudio.Shell.Interop.IVsTask
Public Function OpenDocumentViaProjectWithSpecificAsync (documentMoniker As String, specificEditorFlags As UInteger, editorType As Guid, physicalView As String, logicalView As Guid) As IVsTask

参数

documentMoniker
String

项目系统中文档的唯一名字对象标识符的字符串形式,例如文件的完整路径。 在非文件情况下,此标识符通常采用 URL 的形式。

specificEditorFlags
UInt32

其值取自 __VSSPECIFICEDITORFLAGS 枚举的标志。

editorType
Guid

编辑器类型的唯一标识符。

physicalView
String

物理视图的唯一标识符。

logicalView
Guid

标识 Guid 逻辑视图的 。 默认视图为 VSConstants.LOGVIEWID_Primary ,每个编辑器都必须支持该视图。

如果编辑器在文档视图对象上实现 IVsMultiViewDocumentView ,则传递给 ActivateLogicalView(Guid)的值将确定显示编辑器窗口时激活的视图。

通过指定逻辑视图 Guid,可以请求与请求视图的原因匹配的特定视图。 例如,指定 VSConstants.LOGVIEWID_Debugging 以获取适合调试的视图,或 VSConstants.LOGVIEWID_TextView 获取适用于文本编辑器 (即实现 IVsCodeWindow) 的视图。

返回

表示打开操作的任务。 任务的结果是 一个 IVsAsyncOpenDocumentResult 对象。

注解

此方法返回的任务并不指示已加载文档的视图和 docdata。 有关详细信息,请参阅 DocumentLoadTask

此方法由 VSPackage 使用,这些 VSPackage 不是需要在特定编辑器中打开文档的项目,但不关心哪个项目打开该文件。 若要从 VSPackage 调用此方法,需要确切地知道需要哪个编辑器工厂,以及希望编辑器工厂创建哪个窗口 (即物理视图) 。 在 参数中指定的 logicalView 逻辑视图进一步允许你指定编辑器在编辑器实现 IVsMultiViewDocumentView时应显示的选项卡。

此方法调用 OpenItem(UInt32, Guid, IntPtr, IVsWindowFrame)。 如果没有任何项目可以为该文件提供服务,并且“杂项文件”项目尚不存在,则环境将创建“杂项文件”项目并重试。

适用于