IVsProject2.OpenItem 方法 (UInt32, Guid%, IntPtr, IVsWindowFrame%)
打开项目的项目。
命名空间: Microsoft.VisualStudio.Shell.Interop
程序集: Microsoft.VisualStudio.Shell.Interop(在 Microsoft.VisualStudio.Shell.Interop.dll 中)
语法
声明
Function OpenItem ( _
itemid As UInteger, _
ByRef rguidLogicalView As Guid, _
punkDocDataExisting As IntPtr, _
<OutAttribute> ByRef ppWindowFrame As IVsWindowFrame _
) As Integer
int OpenItem(
uint itemid,
ref Guid rguidLogicalView,
IntPtr punkDocDataExisting,
out IVsWindowFrame ppWindowFrame
)
参数
- itemid
类型:System.UInt32
[in] 打开项目的标识符。应为 VSITEMID_ROOT 或其他活动项标识符。请参见 VSITEMID 枚举。
- rguidLogicalView
类型:System.Guid%
[in] 逻辑视图的唯一标识符。如果不是 GUID_NULL,指示视图特定类型的创建。有关更多信息,请参见 LOGVIEWID。
- punkDocDataExisting
类型:System.IntPtr
[in] 用于打开的项目中的文档数据对象的指针。如果 OpenItem 的调用方拥有指向文档数据对象,它将将在 punkDocDataExisting 参数。如果调用方知道文档数据对象不是打开的,它将通过 nullnull 引用(在 Visual Basic 中为 Nothing)。如果调用方不知道文档数据对象是否处于打开状态,或者不要查找在运行文档表 (RDT)查看,然后对 DOCDATAEXISTING_UNKNOWN可以通过。如果此值传递,则 OpenStandardEditor 将通过调用 FindAndLockDocument (RDT_EditLock) 确定文件 (DocData) 是否查找在 RDT 的值已打开的。
- ppWindowFrame
类型:Microsoft.VisualStudio.Shell.Interop.IVsWindowFrame%
[out] 为 IVsWindowFrame 接口的指针。
返回值
类型:System.Int32
如果方法成功,则返回 S_OK。如果失败,它会返回一个错误代码。
备注
COM 签名
从 vsshell.idl:
HRESULT IVsProject2::OpenItem(
[in] VSITEMID itemid,
[in] REFGUID rguidLogicalView,
[in] IUnknown *punkDocDataExisting,
[out] IVsWindowFrame **ppWindowFrame
);
通过实现在项对象的 IVsProjectSpecificEditorMap2 接口,可执行项目特定的处理文件。 即可以支持打开在一个项目特定版本的文件或允许全局编辑器打开项目。 打开项目需要生成编辑器使用 OpenStandardEditor 或 OpenSpecificEditor,根据处理要实现。 有关更多信息,请参见 GetSpecificEditorProperty。
备注
在 OpenItem的实现,不要对您在 ppWindowFrame返回的窗架的 Show 。
与 ReopenItem 比较方法。
.NET Framework 安全性
- 对直接调用方的完全信任。此成员不能由部分信任的代码使用。有关更多信息,请参见通过部分受信任的代码使用库。