IDiaSourceFile::get_checksum
Pobiera bajty sumy kontrolnej.
Składnia
HRESULT get_checksum (
DWORD cbData,
DWORD* pcbData,
BYTE data[]
);
Parametry
cbData
[in] Rozmiar buforu danych w bajtach.
pcbData
[out] Zwraca liczbę bajtów sumy kontrolnej. Ten parametr nie może mieć wartości NULL
.
data
[in, out] Bufor wypełniony bajtami sumy kontrolnej. Jeśli ten parametr ma NULL
wartość , pcbData
zwraca wymaganą liczbę bajtów.
Wartość zwracana
Jeśli operacja powiedzie się, zwraca wartość S_OK
; w przeciwnym razie zwraca kod błędu.
Uwagi
Aby określić typ algorytmu sumy kontrolnej, który został użyty do wygenerowania bajtów sumy kontrolnej, wywołaj metodę IDiaSourceFile::get_checksumType .
Suma kontrolna jest zwykle generowana na podstawie obrazu pliku źródłowego, więc zmiany w pliku źródłowym są odzwierciedlane w zmianach w bajtach sumy kontrolnej. Jeśli bajty sumy kontrolnej nie są zgodne z sumą kontrolną wygenerowaną na podstawie załadowanego obrazu pliku, plik powinien zostać uznany za uszkodzony lub naruszony.
Typowe sumy kontrolne nigdy nie są większe niż 32 bajty, ale nie zakładają, że jest to maksymalny rozmiar sumy kontrolnej. Ustaw parametr , data
aby NULL
uzyskać liczbę bajtów wymaganych do pobrania sumy kontrolnej. Następnie przydziel bufor o odpowiednim rozmiarze i wywołaj tę metodę jeszcze raz za pomocą nowego buforu.