IVsUIShellOpenDocument.OpenDocumentViaProjectWithSpecific(String, UInt32, Guid, String, Guid, IServiceProvider, IVsUIHierarchy, UInt32, IVsWindowFrame) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Sucht ein bestimmtes Projekt, um dieses Dokument zu öffnen.
public:
int OpenDocumentViaProjectWithSpecific(System::String ^ pszMkDocument, System::UInt32 grfEditorFlags, Guid % rguidEditorType, System::String ^ pszPhysicalView, Guid % rguidLogicalView, [Runtime::InteropServices::Out] Microsoft::VisualStudio::OLE::Interop::IServiceProvider ^ % ppSP, [Runtime::InteropServices::Out] Microsoft::VisualStudio::Shell::Interop::IVsUIHierarchy ^ % ppHier, [Runtime::InteropServices::Out] System::UInt32 % pitemid, [Runtime::InteropServices::Out] Microsoft::VisualStudio::Shell::Interop::IVsWindowFrame ^ % ppWindowFrame);
public int OpenDocumentViaProjectWithSpecific (string pszMkDocument, uint grfEditorFlags, ref Guid rguidEditorType, string pszPhysicalView, ref Guid rguidLogicalView, out Microsoft.VisualStudio.OLE.Interop.IServiceProvider ppSP, out Microsoft.VisualStudio.Shell.Interop.IVsUIHierarchy ppHier, out uint pitemid, out Microsoft.VisualStudio.Shell.Interop.IVsWindowFrame ppWindowFrame);
abstract member OpenDocumentViaProjectWithSpecific : string * uint32 * Guid * string * Guid * IServiceProvider * IVsUIHierarchy * uint32 * IVsWindowFrame -> int
Public Function OpenDocumentViaProjectWithSpecific (pszMkDocument As String, grfEditorFlags As UInteger, ByRef rguidEditorType As Guid, pszPhysicalView As String, ByRef rguidLogicalView As Guid, ByRef ppSP As IServiceProvider, ByRef ppHier As IVsUIHierarchy, ByRef pitemid As UInteger, ByRef ppWindowFrame As IVsWindowFrame) As Integer
Parameter
- pszMkDocument
- String
[in] Zeichenfolgendarstellung des eindeutigen Monikerbezeichners des Dokuments im Projektsystem, beispielsweise der vollständige Pfad zur Datei. Handelt es sich nicht um Dateien, ist dieser Bezeichner oft in Form einer URL angegeben.
- grfEditorFlags
- UInt32
[in] Flags, deren Werte aus der __VSSPECIFICEDITORFLAGS-Enumeration übernommen werden.
- rguidEditorType
- Guid
[in] Eindeutiger Bezeichner des Editortyps.
- pszPhysicalView
- String
[in] Eindeutiger Bezeichner der physischen Ansicht.
- rguidLogicalView
- Guid
[in] Eindeutiger Bezeichner der logischen Ansicht. Wenn der Editor IVsMultiViewDocumentView für das Dokument Ansichts Objekt implementiert, bestimmt der Wert, der an den- rguidLogicalView Parameter übergeben wird, welche Ansicht aktiviert ist, wenn das Editor Fenster angezeigt wird, wenn der Editor instanziiert wird. Durch die Angabe des logischen Ansicht GUID, können Sie die spezifische Ansicht aufrufen, die dem Grund entspricht, weshalb Sie die Ansicht anfordern. Geben Sie beispielsweise LOGVIEWID_Debugging an, um die entsprechende Ansicht für das Debuggen zu erhalten, oder geben Sie LOGVIEWID_TextView, um die entsprechende Ansicht für den Text-Editor zu erhalten (das heißt, eine Ansicht, die IVsCodeWindow implementiert).
- ppSP
- IServiceProvider
[out] Zeiger auf die IServiceProvider-Schnittstelle.
- ppHier
- IVsUIHierarchy
[out] Zeiger auf die IVsUIHierarchy-Schnittstelle des Projekts, das das Dokument öffnen kann.
- pitemid
- UInt32
[out] Zeiger auf den Hierarchienelementbezeichner des Dokuments im Projekt. Weitere Informationen finden Sie unter VSITEMID.
- ppWindowFrame
- IVsWindowFrame
[out, retval] Zeiger auf den Fensterrahmen, der den Editor enthält. Weitere Informationen finden Sie unter IVsWindowFrame.
Gibt zurück
Wenn die Methode erfolgreich ist, wird S_OK zurückgegeben. Bei einem Fehler wird ein Fehlercode zurückgegeben.
Hinweise
COM-Signatur
Aus vsshell. idl:
HRESULT IVsUIShellOpenDocument::OpenDocumentViaProjectWithSpecific(
[in] LPCOLESTR pszMkDocument,
[in] VSSPECIFICEDITORFLAGS grfEditorFlags,
[in] REFGUID rguidEditorType,
[in] LPCOLESTR pszPhysicalView,
[in] REFGUID rguidLogicalView,
[out] IServiceProvider **ppSP,
[out] IVsUIHierarchy **ppHier,
[out] VSITEMID *pitemid,
[out, retval] IVsWindowFrame **ppWindowFrame
);
Diese Methode wird von VSPackages verwendet, bei denen es sich nicht um Projekte handelt, die ein Dokument in einem bestimmten Editor öffnen müssen, aber nicht darauf achten, welches Projekt die Datei öffnet. Um diese Methode aus dem VSPackage aufzurufen, müssen Sie genau wissen, welche Editorfactory Sie benötigen und genau welches Fenster Sie von der Editorfactory erstellen möchten (d. h. die physische Ansicht). Die logische Ansicht, die im- rguidLogicalView Parameter angegeben ist, ermöglicht Ihnen, anzugeben, welche Registerkarte vom Editor angezeigt werden soll, wenn der Editor implementiert IVsMultiViewDocumentView .
Diese Methode ruft OpenItem auf. Wenn ein Projekt die Datei nicht bedienen kann und das Projekt "sonstige Dateien" nicht bereits vorhanden ist, erstellt die Umgebung das Projekt "sonstige Dateien" und versucht es erneut.