Sdílet prostřednictvím


IVsCfgProvider2.GetCfgs – metoda (UInt32, IVsCfg[], UInt32[], UInt32 )

 

Publikováno: srpen 2016

Vrátí objekty za konfigurace pro tento objekt.

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

Syntaxe

int GetCfgs(
    uint celt,
    IVsCfg[] rgpcfg,
    uint[] pcActual,
    uint[] prgfFlags
)
int GetCfgs(
    unsigned int celt,
    array<IVsCfg^>^ rgpcfg,
    array<unsigned int>^ pcActual,
    array<unsigned int>^ prgfFlags
)
abstract GetCfgs : 
        celt:uint32 *
        rgpcfg:IVsCfg[] *
        pcActual:uint32[] *
        prgfFlags:uint32[] -> int
Function GetCfgs (
    celt As UInteger,
    rgpcfg As IVsCfg(),
    pcActual As UInteger(),
    prgfFlags As UInteger()
) As Integer

Parametry

  • celt
    Type: System.UInt32

    [v] Počet objektů konfigurace vrátí, nebo nula, indikující požadavek na neznámý počet objektů.

  • rgpcfg
    Type: Microsoft.VisualStudio.Shell.Interop.IVsCfg[]

    [ve out, size_is(celt)] Na vstupu, ukazatelem na pole rozhraní nebo null. Na výstupu, tento parametr odkazuje na pole IVsCfg rozhraní patřící k objektům požadovaná konfigurace.

  • pcActual
    Type: System.UInt32[]

    [out, nepovinné] Ukazatel na počet objektů konfigurace vrácena nebo null, pokud tyto informace jsou nezbytné.

  • prgfFlags
    Type: System.UInt32[]

    [out, nepovinné] Příznaky, které určují nastavení pro konfigurace projektu nebo null Pokud nejsou požadována žádná nastavení další příznak. Pro platný prgrFlags hodnoty, najdete v tématu __VSCFGFLAGS

Vrácená hodnota

Type: System.Int32

Pokud je metoda úspěšná, vrátí S_OK. Pokud selže, vrátí kód chyby.

Implementuje

IVsCfgProvider.GetCfgs(UInt32, IVsCfg[], UInt32[], UInt32[])

Poznámky

Podpis modelu COM

Z vsshell80.idl:

HRESULT IVsCfgProvider2::GetCfgs(
   [in] ULONG celt,
   [in, out, size_is(celt)] IVsCfg *rgpcfg[],
   [out, optional] ULONG *pcActual,
   [out, optional] VSCFGFLAGS *prgfFlags
);

Pokud pcActual parametr není platnou adresou a celt parametr nastaven na hodnotu 0, počet objektů konfigurace je vrácený v pcActual. Počet vrácených objektů je menší než hodnota celt. Pokud celkový počet objektů konfigurace je menší než hodnota celt, pak jsou vráceny všechny objekty konfigurace. Pokud je větší než celkový počet objektů celt, počet vrácených objektů je omezena na celt a *pcActual je nastavena na celt na výstupu.

Pokud celt je nenulová, rgpcfg nesmí být null nebo E_POINTER je vrácena.

Obvykle volání GetCfgs následujícím způsobem. Volající určuje 0 pro počet objektů a null pro pole ukazatel rozhraní.GetCfgs Vrátí počet objektů konfigurace v obsahu pcActual, informace, které lze použít volajícího k přidělení místa pro pole rozhraní. Druhé volání GetCfgs se provádí pomocí sadu počet objektů a pole ukazatele odkazující na platnou adresu. Následující příklad kódu znázorňuje tuto sekvenci volání:

hr = pIVsCfgProvider->GetCfgs(0, null, &cExpected, null);

prgpcfgs = ::CoTaskMemAlloc(cExpected * sizeof(IVsCfg *));

hr = pIVsCfgProvider->GetCfgs(cExpected, prgpcfgs, &cActual, null);

Viz také

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

Zpátky na začátek