Sdílet prostřednictvím


IVsSolutionBuildManager2.GetProjectDependencies – metoda (IVsHierarchy, UInt32, IVsHierarchy[], UInt32 )

 

Vrátí seznam projektů, které závisí danou hierarchii.

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

Syntaxe

int GetProjectDependencies(
    IVsHierarchy pHier,
    uint celt,
    IVsHierarchy[] rgpHier,
    uint[] pcActual
)
int GetProjectDependencies(
    IVsHierarchy^ pHier,
    unsigned int celt,
    array<IVsHierarchy^>^ rgpHier,
    array<unsigned int>^ pcActual
)
abstract GetProjectDependencies : 
        pHier:IVsHierarchy *
        celt:uint32 *
        rgpHier:IVsHierarchy[] *
        pcActual:uint32[] -> int
Function GetProjectDependencies (
    pHier As IVsHierarchy,
    celt As UInteger,
    rgpHier As IVsHierarchy(),
    pcActual As UInteger()
) As Integer

Parametry

  • celt
    [v] Určuje celt.
  • rgpHier
    [v, out] Určuje sestavení projektů.
  • pcActual
    [výstup, volitelné] Ukazatel počtu projektů.

Vrácená hodnota

Type: System.Int32

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

Implementuje

IVsSolutionBuildManager.GetProjectDependencies(IVsHierarchy, UInt32, IVsHierarchy[], UInt32[])

Poznámky

Podpis COM

Z vsshell.idl:

HRESULT IVsSolutionBuildManager2::GetProjectDependencies(
   [in] IVsHierarchy *pHier,
   [in] ULONG celt,
   [in, out, size_is(celt)] IVsHierarchy *rgpHier[],
   [out, optional] ULONG *pcActual
);

Vrátí seznam projektů, které závisí danou hierarchii.

Volat CalculateProjectDependencies před k volání GetProjectDependencies Pokud si nejste jisti, pokud jsou aktuální na místě o volání závislosti.CalculateProjectDependenciesVynutí projektových závislostí přepočítat.

Tato metoda by měla být volána dvakrát, první čas s celt = 0 a rgpHier = null, získat velikost v pcActual, pak podruhé po přidělení seznamu získat projekty.

Metoda budou prováděny takto (chyba, kterou kontroly jsou vynechány):

ULONG ulActual;

hr = pIVsSolutionBuildManager2->GetProjectDependencies(pHier, 0, NULL, &ulActual)

// allocate memory to hold the hierarchy pointers

IVsHierarchy** rgpIVsHierarchy = (IVsHierarchy**) ::CoTaskMemAlloc(ulActual * sizeof(IVsHierarchy *));

memset(rgpIVsHierarchy, 0, sizeof(IVsHierarchy*)*ulActual);

// now get the hierarchy pointers

ULONG ulActual2;

hr = pIVsSolutionBuildManager2->GetProjectDependencies(pHier, ulActual, rgpIVsHierarchy, &ulActual2);

// use the pointers here

// release the hier pointers

// release the memory

::CoTaskMemFree(rgpIVsHierarchy);

Viz také

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

Zpátky na začátek