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