Aracılığıyla paylaş


IVsCfgProvider.GetCfgs Yöntem (UInt32, IVsCfg[], UInt32[], UInt32 )

 

Bu nesne için yapılandırma başına nesneleri döndürür.

Ad Alanı:   Microsoft.VisualStudio.Shell.Interop
Derleme:  Microsoft.VisualStudio.Shell.Interop (Microsoft.VisualStudio.Shell.Interop.dll içinde)

Sözdizimi

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

Parametreler

  • celt
    Type: System.UInt32

    [in] Ya bir bilinmeyen nesne sayısı için bir istek gösteren, sıfır yapılandırma nesne sayısı.

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

    [içinde çıkış, size_is(celt)] Bir arabirim dizi giriş, işaretçi üzerinde veya null. Çıktı, bu parametre için bir dizi noktaları IVsCfg istenen yapılandırma nesnelere ait arabirimleri.

  • pcActual
    Type: System.UInt32[]

    [out, isteğe bağlı] Yapılandırma nesne sayısını işaretçisine iade veya null, bu bilgileri gerekli değildir.

  • prgfFlags
    Type: System.UInt32[]

    [out, isteğe bağlı] Proje yapılandırmaları için ayarlarını belirten bayrakları veya null gerekiyorsa hiçbir ek bayrağını ayarlar. İçin geçerli prgrFlags değerler, bakın __VSCFGFLAGS

Dönüş Değeri

Type: System.Int32

Yöntem başarılı olursa, döndürür S_OK. Başarısız olursa, bir hata kodu döndürür.

Notlar

COM imza

Vsshell.idl:

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

Varsa pcActual parametresi, geçerli bir adres ve celt parametresi, sıfır olarak ayarlanırsa, yapılandırma nesne sayısı döndürülür pcActual. Döndürülen nesne sayısı değeri küçük veya ona eşit olduğu celt. Yapılandırma nesneleri toplam sayısı değeri küçük olup olmadığını celt, sonra tüm yapılandırma nesneler döndürülür. Toplam nesne sayısı büyükse celt, döndürülen nesne sayısı sınırlıdır celt ve *pcActual ayarlanır celt çıktıyı.

Varsa celt sıfır olan rgpcfg olmamalıdır null veya E_POINTER döndürülür.

Genellikle, çağrıları yapılan GetCfgs gibi. Çağıran nesne sayısı için 0 belirtir ve null arabirimi dizi işaretçisi.GetCfgs yapılandırma nesneleri içeriğini verir pcActual, arayan tarafından arabirimi dizi için alan ayırmak için kullanılan bilgiler. İkinci çağrı GetCfgs nesne sayısı kümesi ve geçerli bir adrese işaret eden dizi işaretçi ile yapılır. Aşağıdaki kod örneği, bu çağrı sırası gösterilmektedir:

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

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

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

Örnekler

Çok yaygın bir desen aşağıdakine benzer olduğundan (atlayarak okunabilirlik için hata denetimleri):

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

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

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

Ayrıca bkz.

IVsCfgProvider Arabirim
Microsoft.VisualStudio.Shell.Interop Ad Alanı

Başa dön