IEnumCERTVIEWCOLUMN::Next-Methode (certview.h)
Die Next-Methode wechselt zur nächsten Spalte in der Spaltenenumerationssequenz.
Syntax
HRESULT Next(
[out] LONG *pIndex
);
Parameter
[out] pIndex
Ein Zeiger auf eine Variable, die den Indexwert der nächsten Spalte enthält, auf die von der Spaltenenumerationssequenz verwiesen wird. Wenn keine weiteren Spalten aufgelistet werden müssen, wird diese Variable auf –1 festgelegt. Diese Methode schlägt fehl, wenn pIndexNULL ist.
Rückgabewert
C++
Wenn die Methode erfolgreich ist, gibt die Methode S_OK zurück, und auf die nächste Spalte in der Spaltenenumerationssequenz wird nun verwiesen. Wenn keine weiteren Spalten aufgelistet werden müssen, gibt die Methode S_FALSE zurück, und der pIndex-Parameter wird auf den Wert –1 festgelegt.Wenn die Methode fehlschlägt, gibt sie einen HRESULT-Wert zurück, der den Fehler angibt. Eine Liste allgemeiner Fehlercodes finden Sie unter Allgemeine HRESULT-Werte.
VB
Der Rückgabewert ist der Indexwert der Spalte, auf die jetzt von der Spaltenenumerationssequenz verwiesen wird. Wenn keine weiteren Spalten aufgelistet werden müssen, ist der Rückgabewert –1.Hinweise
Nach erfolgreichem Abschluss dieser Methode können die Informationen in der Spalte durch Aufrufen einer der folgenden Methoden abgerufen werden:
- IEnumCERTVIEWCOLUMN::GetName: Ruft den nicht lokalisierten Namen der Spalte ab.
- IEnumCERTVIEWCOLUMN::GetDisplayName: Ruft den lokalisierten Namen der Spalte ab.
- IEnumCERTVIEWCOLUMN::GetValue: Ruft die Daten in der Spalte ab.
- IEnumCERTVIEWCOLUMN::GetType: Ruft den Datentyp in der Spalte ab.
- IEnumCERTVIEWCOLUMN::GetMaxLength: Ruft die maximale Länge der Spalte in Bytes ab.
Beispiele
LONG nLength;
LONG nType;
LONG bIsindexed;
LONG Index;
HRESULT hr;
BSTR bstrColName = NULL;
// pEnumCol is previously instantiated IEnumCERTVIEWCOLUMN object
// examine each column
while (S_OK == pEnumCol->Next(&Index))
{
// determine database length
hr = pEnumCol->GetMaxLength(&nLength);
if (FAILED(hr))
{
printf("Failed GetMaxLength %x\n", hr);
goto error;
}
// determine data type
hr = pEnumCol->GetType(&nType);
if (FAILED(hr))
{
printf("Failed GetType %x\n", hr);
goto error;
}
// determine whether column is indexed
hr = pEnumCol->IsIndexed(&bIsindexed);
if (FAILED(hr))
{
printf("Failed IsIndexed %x\n", hr);
goto error;
}
// retrieve column name
hr = pEnumCol->GetName(&bstrColName);
if (FAILED(hr))
{
printf("Failed GetName %x\n", hr);
goto error;
}
// print this column's info on one line
// print name and length
printf("Column %ws has max length %d",
bstrColName,
nLength);
// print data type
switch (nType)
{
case PROPTYPE_BINARY:
printf(" Type is Binary");
break;
case PROPTYPE_DATE:
printf(" Type is Date+Time");
break;
case PROPTYPE_LONG:
printf(" Type is Signed long");
break;
case PROPTYPE_STRING:
printf(" Type is Unicode String");
break;
default:
printf(" Type is unknown");
break;
}
// print index status
printf(bIsindexed ? " Indexed" : " Not indexed");
// print new line marker
printf("\n");
}
error:
// done processing, clear resources
if (NULL != bstrColName)
SysFreeString(bstrColName);
Anforderungen
Unterstützte Mindestversion (Client) | Nicht unterstützt |
Unterstützte Mindestversion (Server) | Windows Server 2003 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | certview.h (include Certsrv.h) |
Bibliothek | Certidl.lib |
DLL | Certadm.dll |
Weitere Informationen
IEnumCERTVIEWCOLUMN::GetDisplayName