Fungsi CertCompareIntegerBlob (wincrypt.h)

Fungsi CertCompareIntegerBlob membandingkan dua BLOB bilangan bulat untuk menentukan apakah mereka mewakili nilai numerik yang sama.

Sintaks

BOOL CertCompareIntegerBlob(
  [in] PCRYPT_INTEGER_BLOB pInt1,
  [in] PCRYPT_INTEGER_BLOB pInt2
);

Parameter

[in] pInt1

Penunjuk ke struktur CRYPT_INTEGER_BLOB yang berisi bilangan bulat pertama dalam perbandingan.

[in] pInt2

Penunjuk ke struktur CRYPT_INTEGER_BLOB yang berisi bilangan bulat kedua dalam perbandingan.

Menampilkan nilai

Jika representasi BLOB bilangan bulat identik dan fungsi berhasil, fungsi mengembalikan bukan nol (TRUE).

Jika fungsi gagal, fungsi mengembalikan nol (FALSE). Untuk informasi kesalahan yang diperluas, hubungi GetLastError.

Keterangan

Sebelum melakukan perbandingan, byte paling signifikan dengan nilai 0x00 dihapus dari angka positif. Positif di sini berarti bahwa bit yang paling signifikan dalam byte bukan nol berikutnya tidak diatur.

Byte yang paling signifikan dengan nilai 0xFF dihapus dari angka negatif. Negatif di sini berarti bahwa bit paling signifikan dalam byte non-0xFF berikutnya diatur. Ini menghasilkan representasi unik dari bilangan bulat tersebut, seperti yang diperlihatkan dalam tabel berikut.

Byte asli Formulir yang dikurangi
0xFFFFFF88 0xFF88
0xFF23 0xFF23
0x007F 0x7F
0x00000080 0x80
 

Bilangan bulat multi-byte diperlakukan sebagai little-endian. Byte yang paling tidak signifikan adalah pbData[0]. Byte yang paling signifikan adalah pbData[cbData - 1], yaitu, 0xFFFFFF88 disimpan dalam empat byte sebagai:

{0x88, 0xFF, 0xFF, 0xFF}

Contoh

Untuk contoh yang menggunakan fungsi ini, lihat Contoh Program C: Menggunakan CertOIDToAlgId dan CertCompareIntegerBlob.

Persyaratan

   
Klien minimum yang didukung Windows XP [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Windows Server 2003 [aplikasi desktop | Aplikasi UWP]
Target Platform Windows
Header wincrypt.h
Pustaka Crypt32.lib
DLL Crypt32.dll

Lihat juga

CRYPT_INTEGER_BLOB

Fungsi Manajemen Data

GetLastError