Metoda IVsUIShellOpenDocument.OpenDocumentViaProjectWithSpecific — (String, UInt32, Guid, String, Guid, IServiceProvider, IVsUIHierarchy, UInt32, IVsWindowFrame)
Umożliwia znalezienie określonego projektu, aby otworzyć ten dokument.
Przestrzeń nazw: Microsoft.VisualStudio.Shell.Interop
Zestaw: Microsoft.VisualStudio.Shell.Interop (w Microsoft.VisualStudio.Shell.Interop.dll)
Składnia
int OpenDocumentViaProjectWithSpecific(
string pszMkDocument,
uint grfEditorFlags,
[InAttribute] ref Guid rguidEditorType,
string pszPhysicalView,
[InAttribute] ref Guid rguidLogicalView,
out IServiceProvider ppSP,
out IVsUIHierarchy ppHier,
out uint pitemid,
out IVsWindowFrame ppWindowFrame
)
int OpenDocumentViaProjectWithSpecific(
String^ pszMkDocument,
unsigned int grfEditorFlags,
[InAttribute] Guid% rguidEditorType,
String^ pszPhysicalView,
[InAttribute] Guid% rguidLogicalView,
[OutAttribute] IServiceProvider^% ppSP,
[OutAttribute] IVsUIHierarchy^% ppHier,
[OutAttribute] unsigned int% pitemid,
[OutAttribute] IVsWindowFrame^% ppWindowFrame
)
abstract OpenDocumentViaProjectWithSpecific :
pszMkDocument:string *
grfEditorFlags:uint32 *
rguidEditorType:Guid byref *
pszPhysicalView:string *
rguidLogicalView:Guid byref *
ppSP:IServiceProvider byref *
ppHier:IVsUIHierarchy byref *
pitemid:uint32 byref *
ppWindowFrame:IVsWindowFrame byref -> int
Function OpenDocumentViaProjectWithSpecific (
pszMkDocument As String,
grfEditorFlags As UInteger,
<InAttribute> ByRef rguidEditorType As Guid,
pszPhysicalView As String,
<InAttribute> ByRef rguidLogicalView As Guid,
<OutAttribute> ByRef ppSP As IServiceProvider,
<OutAttribute> ByRef ppHier As IVsUIHierarchy,
<OutAttribute> ByRef pitemid As UInteger,
<OutAttribute> ByRef ppWindowFrame As IVsWindowFrame
) As Integer
Parametry
pszMkDocument
Type: System.String[in] Ciąg formularza moniker Unikatowy identyfikator dokumentu w systemie projektu, na przykład Pełna ścieżka do pliku. W przypadku plików innych niż ten identyfikator jest często w postaci adresu URL.
grfEditorFlags
Type: System.UInt32[in] Flagi, których wartości są pobierane z __VSSPECIFICEDITORFLAGS wyliczenia.
rguidEditorType
Type: System.Guid[in] Unikatowy identyfikator typu edytora.
pszPhysicalView
Type: System.String[in] Unikatowy identyfikator widoku fizycznych.
rguidLogicalView
Type: System.Guid[in] Unikatowy identyfikator widoku logicznym. Jeśli Edytor implementuje IVsMultiViewDocumentView na obiekt widoku dokumentu, następnie wartość przekazywana do rguidLogicalView parametr określa widok jest aktywny, gdy okno edytora jest wyświetlany, gdy zostanie uruchomiony Edytor. Określając widok logiczny identyfikatora GUID, możesz poprosić o specjalny widok, który jest zgodna z powodu żądania widoku. Na przykład określić LOGVIEWID_Debugging uzyskać odpowiednie do debugowania, widok lub LOGVIEWID_TextView uzyskanie odpowiedniego edytora tekstów widoku (oznacza to, że widok, który implementuje IVsCodeWindow).
ppSP
Type: Microsoft.VisualStudio.OLE.Interop.IServiceProvider[out] Wskaźnik do IServiceProvider interfejsu.
ppHier
Type: Microsoft.VisualStudio.Shell.Interop.IVsUIHierarchy[out] Wskaźnik do IVsUIHierarchy interfejs projektu, który można otworzyć dokumentu.
pitemid
Type: System.UInt32[out] Wskaźnik do identyfikatora elementu hierarchii dokumentu w projekcie. Aby uzyskać więcej informacji, zobacz VSITEMID.
ppWindowFrame
Type: Microsoft.VisualStudio.Shell.Interop.IVsWindowFrame[out, retval] Wskaźnik do ramki okna, który zawiera edytora. Aby uzyskać więcej informacji, zobacz IVsWindowFrame.
Wartość zwracana
Type: System.Int32
Jeśli metoda zakończy się pomyślnie, zwraca S_OK. Jeśli nie, zwraca kod błędu.
Uwagi
Podpis COM
Z 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
);
Ta metoda jest używana przez pakiety VSPackages, które nie są projekty, które należy otworzyć dokument w edytorze określonych, ale nie nie opieka projektu otwiera plik. Aby wywołać tę metodę z Twojego pakietu VSPackage, użytkownik musi wiedzieć ma dokładnie których fabryki edytora i dokładnie okna, które chcesz fabryki edytora, aby utworzyć (oznacza to, że widok fizycznych). Widok logiczny określone w rguidLogicalView dalsze parametr umożliwia określenie karty mają być wyświetlane przez edytor, jeśli edytor implementuje IVsMultiViewDocumentView.
Ta metoda wywołuje OpenItem. Jeśli projekt nie może obsłużyć plik i inne pliki projektu nie jest już obecny, środowiska następnie tworzy projekt różne pliki i spróbuje ponownie.
Zobacz też
Interfejs IVsUIShellOpenDocument
Przestrzeń nazw Microsoft.VisualStudio.Shell.Interop
Powrót do początku