IVsProject4.OpenItem(UInt32, Guid, IntPtr, IVsWindowFrame) Methode

Definition

Öffnet ein Element im Projekt.

public:
 int OpenItem(System::UInt32 itemid, Guid % rguidLogicalView, IntPtr punkDocDataExisting, [Runtime::InteropServices::Out] Microsoft::VisualStudio::Shell::Interop::IVsWindowFrame ^ % ppWindowFrame);
public int OpenItem (uint itemid, ref Guid rguidLogicalView, IntPtr punkDocDataExisting, out Microsoft.VisualStudio.Shell.Interop.IVsWindowFrame ppWindowFrame);
abstract member OpenItem : uint32 * Guid * nativeint * IVsWindowFrame -> int
Public Function OpenItem (itemid As UInteger, ByRef rguidLogicalView As Guid, punkDocDataExisting As IntPtr, ByRef ppWindowFrame As IVsWindowFrame) As Integer

Parameter

itemid
UInt32

[in] Bezeichner des zu öffnenden Elements. Sollte VSITEMID_ROOT oder ein anderer gültiger Elementbezeichner sein. Weitere Informationen finden Sie unter der VSITEMID-Enumeration.

rguidLogicalView
Guid

[in] Eindeutiger Bezeichner der logischen Ansicht. Wenn nicht GUID_NULL, gibt einen bestimmten Typ von Ansicht an, der erstellt werden soll. Weitere Informationen finden Sie unter LOGVIEWID.

punkDocDataExisting
IntPtr

[in] Zeiger auf Dokumentendatenobjekt des zu öffnenden Elements. Wenn der Aufrufer von OpenItem einen Zeiger auf das Dokument Datenobjekt hätte, würde er ihn an den- punkDocDataExisting Parameter übergeben. Wenn der Aufrufer wusste, dass das Dokumentendatenobjekt nicht geöffnet wurde, würde null übergeben. Wenn der Aufrufer nicht wusste, ob das Dokumentendatenobjekt geöffnet wurde, oder ob es nicht in der ausgeführten Dokumententabelle (RDT) danach suchen wollte, um es herauszufinden, könnte es in DOCDATAEXISTING_UNKNOWN übergeben werden, wenn dieser Wert übergeben wird, dann sucht OpenStandardEditor(UInt32, String, Guid, String, IVsUIHierarchy, UInt32, IntPtr, IServiceProvider, IVsWindowFrame) den Wert im RDT durch das Aufrufen von FindAndLockDocument(UInt32, String, IVsHierarchy, UInt32, IntPtr, UInt32) (RDT_EditLock), um festzustellen, ob die Datei (Dokumentendatenobjekt) bereits geöffnet ist.

ppWindowFrame
IVsWindowFrame

[out] Zeiger auf die IVsWindowFrame-Schnittstelle.

Gibt zurück

Int32

Wenn die Methode erfolgreich ist, wird S_OK zurückgegeben. Bei einem Fehler wird ein Fehlercode zurückgegeben.

Implementiert

Hinweise

COM-Signatur

Aus vsshell. idl:

HRESULT IVsProject3::OpenItem(  
   [in] VSITEMID itemid,  
   [in] REFGUID rguidLogicalView,  
   [in] IUnknown *punkDocDataExisting,  
   [out] IVsWindowFrame **ppWindowFrame  
);  

Durch Implementieren IVsProjectSpecificEditorMap2 der-Schnittstelle für das Projekt Objekt können Sie eine projektspezifische Verarbeitung von Dateien durchführen. Das heißt, Sie können das Öffnen der Datei in einem projektspezifischen Editor unterstützen oder dem globalen Editor erlauben, das Element zu öffnen. Zum Öffnen eines Elements muss OpenStandardEditor OpenSpecificEditor in Abhängigkeit von der Handhabung, die Sie implementieren möchten, ein Editor mithilfe von oder gestartet werden. Weitere Informationen finden Sie unter GetSpecificEditorProperty.

Hinweis

In ihrer Implementierung von OpenItem sollten Show Sie nicht für den Fensterrahmen aufzurufen, den Sie in zurückgeben ppWindowFrame .

Mit der- ReopenItem Methode vergleichen.

Gilt für