IDiaSourceFile::get_checksum
Ruft die Prüfsummenbytes ab.
Syntax
HRESULT get_checksum (
DWORD cbData,
DWORD* pcbData,
BYTE data[]
);
Parameter
cbData
[in] Größe des Datenpuffers in Bytes.
pcbData
[out] Gibt die Anzahl der Prüfsummenbytes zurück. Dieser Parameter darf nicht NULL
sein.
data
[in, out] Ein Puffer, der mit den Prüfsummenbytes gefüllt ist. Wenn dieser Parameter NULL
ist, gibt pcbData
die Anzahl der erforderlichen Bytes zurück.
Rückgabewert
Wenn die Ausführung erfolgreich ist, wird S_OK
, andernfalls ein Fehlercode zurückgegeben.
Bemerkungen
Um den Typ des Prüfsummenalgorithmus zu bestimmen, der zum Generieren der Prüfsummenbytes verwendet wurde, rufen Sie die IDiaSourceFile::get_checksumType-Methode auf.
Die Prüfsumme wird in der Regel aus dem Image der Quelldatei generiert, sodass sich Änderungen in der Quelldatei in Änderungen in den Prüfsummenbytes widerspiegeln. Wenn die Prüfsummenbytes nicht mit einer Prüfsumme übereinstimmen, die aus dem geladenen Image der Datei generiert wird, sollte die Datei als beschädigt oder manipuliert betrachtet werden.
Typische Prüfsummen sind nie größer als 32 Bytes, aber gehen Sie nicht davon aus, dass dies die maximale Größe einer Prüfsumme ist. Legen Sie den data
-Parameter auf NULL
fest, um die Anzahl der Bytes abzurufen, die zum Abrufen der Prüfsumme erforderlich sind. Ordnen Sie dann einen Puffer der geeigneten Größe zu, und rufen Sie diese Methode ein weiteres Mal mit dem neuen Puffer auf.