Freigeben über


ICertView::SetRestriction-Methode (certview.h)

Die SetRestriction-Methode legt die Sortier- und Qualifikationseinschränkungen für eine Spalte fest.

Syntax

HRESULT SetRestriction(
  [in] LONG          ColumnIndex,
  [in] LONG          SeekOperator,
  [in] LONG          SortOrder,
  [in] const VARIANT *pvarValue
);

Parameter

[in] ColumnIndex

Eine gültige Spaltenindexnummer für die Ansicht oder einen vordefinierten Spaltenbezeichner. Wenn der ColumnIndex-Parameter nicht negativ ist, stellt dieser Wert den nullbasierten Index der Spalte dar, die die Einschränkung empfängt.

Wenn der ColumnIndex-Parameter negativ ist, werden alle anderen Parameter ignoriert, und dieser Parameter muss einer der folgenden Werte sein.

Wert Bedeutung
CV_COLUMN_LOG_DEFAULT
Schränkt die Sicht auf aufgelöste Anforderungen ein. Eine Anforderung wird aufgelöst, wenn sie zu einem ausgestellten Zertifikat oder einer fehlerhaften Anforderung geführt hat. widerrufene Zertifikate gelten als aufgelöst.
CV_COLUMN_LOG_FAILED_DEFAULT
Schränkt die Ansicht auf Anforderungen ein, bei denen ein Fehler aufgetreten ist.
CV_COLUMN_QUEUE_DEFAULT
Beschränkt die Ansicht auf Anforderungen, die nicht aufgelöst wurden; wenn eine Anforderung entweder zu einem ausgestellten Zertifikat oder zu einer fehlerhaften Anforderung geführt hat, ist sie nicht Teil der Ansicht.

[in] SeekOperator

Gibt den logischen Operator des Datenabfragequalifizierers für die Spalte an. Dieser Parameter wird zusammen mit dem pvarValue-Parameter verwendet, um den Data-Query-Qualifizierer zu definieren. Dieser Parameter muss auf einen der folgenden Werte festgelegt werden.

Wert Bedeutung
CVR_SEEK_EQ
Gleich
CVR_SEEK_LE
Kleiner als oder gleich
CVR_SEEK_LT
Kleiner als
CVR_SEEK_GE
Größer als oder gleich
CVR_SEEK_GT
Größer als

[in] SortOrder

Gibt die Sortierreihenfolge für die Spalte an. Indizierte Spalten mit null oder einer Einschränkung können eine Sortierreihenfolge von CVR_SORT_ASCEND oder CVR_SORT_DESCEND enthalten. Nicht indizierte Spalten oder Spalten mit mindestens zwei Einschränkungen müssen CVR_SORT_NONE verwenden.

Wert Bedeutung
CVR_SORT_ASCEND
Aufsteigend
CVR_SORT_DESCEND
Absteigend
CVR_SORT_NONE
Keine Sortierreihenfolge

[in] pvarValue

Gibt den Datenabfragequalifizierer an, der auf diese Spalte angewendet wird. Dieser Parameter bestimmt zusammen mit dem SeekOperator-Parameter , welche Daten an die Zertifikatdienstesicht zurückgegeben werden.

Rückgabewert

VB

Wenn die Methode erfolgreich ist, gibt die Methode S_OK zurück.

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.

Hinweise

Das ICertView-Objekt verwaltet ein Array von Einschränkungen, sodass jede Spalte eine beliebige Anzahl von Einschränkungen enthalten kann. Nachdem die Spalteneinschränkungen eingerichtet wurden, ruft ein Aufruf der ICertView::OpenView-Methode die Daten ab, wobei die Einschränkungen jeder Spalte als Teil der Datenbankabfrage verwendet werden.

Bevor die SetRestriction-Methode aufgerufen wird, muss eine Verbindung mit dem Zertifikatdienstserver hergestellt werden, indem Sie die ICertView::OpenConnection-Methode aufrufen.

Beispiele

    // This example restricts the data
    // to rows that have RequestIDs greater than five.
    // pCertView is a pointer to ICertView.
    HRESULT    hr;
    VARIANT    varRest;
    LONG       nIndex;
    BSTR       bstrCol = NULL;

    // Use one column in the result set.
    hr = pCertView->SetResultColumnCount(1);
    if (FAILED(hr))
    {
        printf("Failed SetResultColumnCount - %x\n", hr);
        goto error;
    }
    // Determine the column index for RequestID column.
    bstrCol = SysAllocString(TEXT("RequestID"));
    hr = pCertView->GetColumnIndex(FALSE, bstrCol, &nIndex);
    if (FAILED(hr))
    {
        printf("Failed GetColumnIndex - %x\n", hr);
        goto error;
    }
    // Place this column into the result set.
    pCertView->SetResultColumn(nIndex);
    // Set a restriction on this column.
    VariantInit(&varRest);
    varRest.vt = VT_I4;
    varRest.lVal = 5;
    // Restrict view to requests with ID greater than 5.
    hr = pCertView->SetRestriction(nIndex,
                                   CVR_SEEK_GT,
                                   CVR_SORT_NONE,
                                   &varRest);
    if (S_OK != hr)
        printf("Failed ICertView::SetRestriction - %x\n", hr);
    else
	{
        // Call OpenView, process rows, release resources, and so on.
        // ...
	}
error:
    // Done processing, clear resources.
    VariantClear(&varRest);
    if (NULL != bstrCol)
        SysFreeString(bstrCol);

Anforderungen

Anforderung Wert
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

ICertView

ICertView2

ICertView::OpenConnection

ICertView::OpenView

ICertView::SetResultColumn

IEnumCertViewColumn::IsIndexed