CheckSumMappedFile-Funktion (imagehlp.h)
Berechnet die Prüfsumme der angegebenen Imagedatei.
Syntax
PIMAGE_NT_HEADERS IMAGEAPI CheckSumMappedFile(
[in] PVOID BaseAddress,
[in] DWORD FileLength,
[out] PDWORD HeaderSum,
[out] PDWORD CheckSum
);
Parameter
[in] BaseAddress
Die Basisadresse der zugeordneten Datei. Dieser Wert wird durch Aufrufen der MapViewOfFile-Funktion abgerufen.
[in] FileLength
Die Größe der Datei (in Bytes).
[out] HeaderSum
Ein Zeiger auf eine Variable, die die ursprüngliche Prüfsumme aus der Bilddatei empfängt, oder null, wenn ein Fehler vorliegt.
[out] CheckSum
Ein Zeiger auf die Variable, die die berechnete Prüfsumme empfängt.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert ein Zeiger auf die IMAGE_NT_HEADERS Struktur, die im zugeordneten Bild enthalten ist.
Wenn bei der Funktion ein Fehler auftritt, ist der Rückgabewert NULL. Rufen Sie GetLastError auf, um erweiterte Fehlerinformationen abzurufen.
Hinweise
Die Funktion CheckSumMappedFile berechnet eine neue Prüfsumme für die Datei und gibt sie im CheckSum-Parameter zurück. Diese Funktion wird von jeder Anwendung verwendet, die ein ausführbares Image erstellt oder ändert. Prüfsummen sind für Kernelmodustreiber und einige System-DLLs erforderlich. Der Linker berechnet die ursprüngliche Prüfsumme zur Linkzeit, wenn Sie den entsprechenden Linkerschalter verwenden. Weitere Informationen finden Sie in der Dokumentation zu Ihrem Linker.
Es wird empfohlen, dass alle Bilder über gültige Prüfsummen verfügen. Es liegt in der Verantwortung des Aufrufers, die neu berechnete Prüfsumme im zugeordneten Image zu platzieren und das Image der Datei auf dem Datenträger zu aktualisieren.
Alle ImageHlp-Funktionen, z. B. diese, sind single threaded. Daher führen an diese Funktion gerichtete Aufrufe mehrerer Threads wahrscheinlich zu unerwartetem Verhalten oder einer Beschädigung des Speichers. Um dies zu vermeiden, müssen Sie alle an diese Funktion gerichteten gleichzeitigen Aufrufe mehrerer Threads synchronisieren.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows XP [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | imagehlp.h |
Bibliothek | Imagehlp.lib |
DLL | Imagehlp.dll |