Sdílet prostřednictvím


IVsSolution.CreateProject – metoda (Guid, String, String, String, UInt32, Guid, IntPtr)

 

Vytvoří nebo otevře projekt.

Obor názvů:   Microsoft.VisualStudio.Shell.Interop
Sestavení:  Microsoft.VisualStudio.Shell.Interop (v Microsoft.VisualStudio.Shell.Interop.dll)

Syntaxe

int CreateProject(
    [InAttribute] ref Guid rguidProjectType,
    string lpszMoniker,
    string lpszLocation,
    string lpszName,
    uint grfCreateFlags,
    [InAttribute] ref Guid iidProject,
    out IntPtr ppProject
)
int CreateProject(
    [InAttribute] Guid% rguidProjectType,
    String^ lpszMoniker,
    String^ lpszLocation,
    String^ lpszName,
    unsigned int grfCreateFlags,
    [InAttribute] Guid% iidProject,
    [OutAttribute] IntPtr% ppProject
)
abstract CreateProject : 
        rguidProjectType:Guid byref *
        lpszMoniker:string *
        lpszLocation:string *
        lpszName:string *
        grfCreateFlags:uint32 *
        iidProject:Guid byref *
        ppProject:nativeint byref -> int
Function CreateProject (
    <InAttribute> ByRef rguidProjectType As Guid,
    lpszMoniker As String,
    lpszLocation As String,
    lpszName As String,
    grfCreateFlags As UInteger,
    <InAttribute> ByRef iidProject As Guid,
    <OutAttribute> ByRef ppProject As IntPtr
) As Integer

Parametry

  • rguidProjectType
    [v] Jedinečný identifikátor pro typ projektu získané při registraci výroby projektu.Může být GUID_NULL, pokud hodnota pro lpszMoniker je určena.Tento parametr označuje typ projektu vytvořit nebo přidat do roztoku.Pokud je hodnota GUID_NULL prostředí pokusí zjistit typ projektu na základě přípony souboru.
  • lpszMoniker
    [v] Ukazatel myši na zástupný název souboru.Pokud tato metoda slouží k otevření projektu, zadejte cestu k projektu na disku (včetně přípony souboru a název projektu).Metoda používá k vytvoření projektu, potom zadejte úplnou cestu k souboru šablony, bude klonován.
  • lpszLocation
    [v] Ukazatel na cestu k určení umístění pro nový projekt.Tento parametr je používán pouze při CPF_CLONEFILE je určena pro grfCreateFlags parametr; jinak je null (pro otevření projektu).Pokud je projekt založen adresáře projektu, je to adresář pro projekt.Soubor projektu pro projekt je uložen v tomto adresáři.Pokud projekt není založené na adresář, toto umístění je použito pouze pro uložení souboru projektu a případně jako výchozí adresář pro nově vytvořené položky.szLocation Parametr je definován vždy obsahovat koncové lomítko (\).Projekt výroby, pak nemá hledat cesty, které vypadají jako "C:" a "C:\MyProjects\Project1" při sestavování název cesty souboru projektu.
  • lpszName
    [v] Ukazatel myši na název nového projektu.Tento parametr je používán pouze při CPF_CLONEFILE je určena pro grfCreateFlags parametr; jinak je null (pro otevření projektu).Název projektu neobsahuje příponu souboru.
  • grfCreateFlags
    [v] Řídí způsob vytvoření nebo otevření projektu.Seznam grfCreateFlags hodnoty, viz __VSCREATEPROJFLAGS.
  • iidProject
    [v] Vrácené identifikátor rozhraní ppProject.Tuto hodnotu lze zadat bez návratu iid_NULL.
  • ppProject
    [out, iid_is(iidProject)] Ukazatel myši na nově vytvořený projekt.

Vrácená hodnota

Type: System.Int32

Pokud metoda uspěje, vrací S_OK.Pokud se nezdaří, vrátí kód chyby.

Poznámky

Podpis COM

Z vsshell.idl:

HRESULT IVsSolution::CreateProject(
   [in] REFGUID rguidProjectType,
   [in] LPCOLESTR lpszMoniker,
   [in] LPCOLESTR lpszLocation,
   [in] LPCOLESTR lpszName,
   [in] VSCREATEPROJFLAGS grfCreateFlags,
   [in] REFIID iidProject,
   [out, iid_is(iidProject)] void **ppProject
);

Pokud k vytvoření nového projektu pomocí této metody poskytují hodnoty pro lpszMoniker, lpszLocation, a lpszName.Pokud používáte tuto metodu k otevření existujícího projektu, pak lpszLocation, a lpszName jsou null.

Zpracovává tento způsob vytváření a otevírání projektu pouze soubory a nepodporuje soubory s příponou SLN, DSW nebo VBG otevírání řešení souboru.Otevření těchto typů souborů je zpracována OpenSolutionFile metoda.

Vytvoření nového projektu je dosaženo pomocí klonování prázdný projekt.Určuje prostředí, které VSPackage volání této metody založené na příponě souboru.

Pokud oba CPF_CLONEFILE a CPF_OVERWRITE jsou specifikovány projektu přepíše souboru cílového projektu.Pokud CPF_OVERWRITE není zadána konkrétní HRESULT, VS_E_PROJECTALREADYEXISTS, vrácená touto metodou.Zobrazí prostředí Tento projekt již existuje dialogové okno.Pokud uživatel zvolí přepsat soubor projektu, zavolá prostředí CreateProject znovu, metoda určení i CPF_CLONEFILE a CPF_OVERWRITE.

Tuto metodu lze zobrazit uživatelské rozhraní, pokud CPF_SILENT zadán příznak.Tato metoda by uživateli nahlásit chybové zprávy.Tato metoda používá chybách standardní konvence životního prostředí; volá SetErrorInfo metoda zaznamenat jakékoli chyby, dochází a potom vrátí chybu HRESULT.Nakonec volání volajícího ReportErrorInfo metoda zobrazit chybovou zprávu.

Pokud tato metoda vrátí chybu HRESULT, zavolá SetErrorInfo metoda poskytnout informace o tom, které VSPackage nebo projektu nelze načíst a proč.Volající tuto metodu lze použít ReportErrorInfo metoda uživateli zobrazit tato chybová zpráva.

Viz také

IVsSolution – rozhraní
Microsoft.VisualStudio.Shell.Interop – obor názvů

Zpátky na začátek