CertCompareIntegerBlob-Funktion (wincrypt.h)
Die CertCompareIntegerBlob-Funktion vergleicht zwei ganzzahlige BLOBs , um zu bestimmen, ob sie die gleichen numerischen Werte darstellen.
Syntax
BOOL CertCompareIntegerBlob(
[in] PCRYPT_INTEGER_BLOB pInt1,
[in] PCRYPT_INTEGER_BLOB pInt2
);
Parameter
[in] pInt1
Ein Zeiger auf eine CRYPT_INTEGER_BLOB-Struktur , die die erste ganze Zahl im Vergleich enthält.
[in] pInt2
Ein Zeiger auf eine CRYPT_INTEGER_BLOB-Struktur , die die zweite ganze Zahl im Vergleich enthält.
Rückgabewert
Wenn die Darstellungen der ganzzahligen BLOBs identisch sind und die Funktion erfolgreich ist, gibt die Funktion ungleich null (TRUE) zurück.
Wenn die Funktion fehlschlägt, gibt sie null (FALSE) zurück. Rufen Sie GetLastError auf, um erweiterte Fehlerinformationen zu erhalten.
Hinweise
Vor dem Vergleich werden die wichtigsten Bytes mit dem Wert 0x00 aus einer positiven Zahl entfernt. Positiv bedeutet hier, dass das wichtigste Bit im nächsten Byte ungleich Null nicht festgelegt ist.
Die wichtigsten Bytes mit dem Wert 0xFF werden aus einer negativen Zahl entfernt. Negativ bedeutet hier, dass das wichtigste Bit im nächsten nicht 0xFF Byte festgelegt ist. Dadurch wird die eindeutige Darstellung dieser ganzen Zahl erzeugt, wie in der folgenden Tabelle gezeigt.
Ursprüngliche Bytes | Reduzierte Form |
---|---|
0xFFFFFF88 | 0xFF88 |
0xFF23 | 0xFF23 |
0x007F | 0x7F |
0x00000080 | 0x80 |
Ganzzahlen mit mehreren Byte werden als Little-Endian behandelt. Das am wenigsten signifikante Byte ist pbData[0]. Das bedeutendste Byte ist pbData[cbData - 1], d. 0xFFFFFF88 wird in vier Bytes wie folgt gespeichert:
{0x88, 0xFF, 0xFF, 0xFF}
Beispiele
Ein Beispiel, das diese Funktion verwendet, finden Sie unter Beispiel-C-Programm: Verwenden von CertOIDToAlgId und CertCompareIntegerBlob.
Anforderungen
Unterstützte Mindestversion (Client) | Windows XP [Desktop-Apps | UWP-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [Desktop-Apps | UWP-Apps] |
Zielplattform | Windows |
Kopfzeile | wincrypt.h |
Bibliothek | Crypt32.lib |
DLL | Crypt32.dll |