WTHelperGetFileHash-Funktion

[Die WTHelperGetFileHash-Funktion ist für die Verwendung in den im Abschnitt Anforderungen angegebenen Betriebssystemen verfügbar. Es kann in nachfolgenden Versionen geändert oder entfernt werden.]

Die WTHelperGetFileHash-Funktion überprüft die Signatur einer signierten Datei und erhält den Hashwert und den Algorithmusbezeichner für die Datei.

Hinweis

Diese Funktion wird nicht in einer veröffentlichten Headerdatei deklariert. Um diese Funktion zu verwenden, deklarieren Sie sie im genauen angezeigten Format. Diese Funktion verfügt auch über keine zugeordnete Importbibliothek. Sie müssen die Funktionen LoadLibrary und GetProcAddress verwenden, um eine dynamische Verknüpfung mit Wintrust.dll.

Syntax

LONG WINAPI WTHelperGetFileHash(
  _In_        LPCWSTR pwszFilename,
  _In_        DWORD   dwFlags,
  _Inout_opt_ PVOID   pvReserved,
  _Out_opt_   BYTE    *pbFileHash,
  _Inout_opt_ DWORD   *pcbFileHash,
  _Out_opt_   ALG_ID  *pHashAlgid
);

Parameter

pwszFilename [ In]

Ein Zeiger auf eine auf NULL beendete Unicode-Zeichenfolge, die den Pfad und Dateinamen der Datei enthält, für die der Hashwert zurückgegeben werden soll.

dwFlags [ In]

Dieser Parameter wird nicht verwendet und sollte 0 (null) sein.

pvReserved [ in, out, optional]

Dieser Parameter wird nicht verwendet und sollte NULL sein.

pbFileHash [ out, optional]

Ein Zeiger auf einen Puffer, um den Hashwert für die Datei zu empfangen. Der parameterfileHash enthält die Größe dieses Puffers.

dateiFileHash [ in, out, optional]

Ein Zeiger auf eine DWORD-Variable, die bei der Eingabe die Größe des pbFileHash-Puffers in Bytes enthält und bei der Ausgabe die Größe des Hashwerts in Bytes empfängt.

Um die erforderliche Größe des Hashwerts zu erhalten, übergeben Sie NULL für den pbFileHash-Parameter. Diese Funktion platzieren die erforderliche Größe des Hashwerts in Bytes an dieser Position.

Wenn der pbFileHash-Parameter nicht NULL ist und die Größe nicht groß genug ist, um den Hashwert zu empfangen, platzieren diese Funktion die erforderliche Größe in Byte an diesem Speicherort und gibt ERROR MORE _ _ DATA zurück.

pHashAlgid [ out, optional]

Ein Zeiger auf eine _ ALG-ID-Variable, um den Bezeichner des Algorithmus zu empfangen, der zum Erstellen des Hashwerts verwendet wird. Dieser Parameter kann NULL sein, wenn diese Informationen nicht benötigt werden.

Rückgabewert

Gibt einen Statuscode zurück, der den Erfolg oder Fehler der Funktion angibt.

Mögliche Rückgabecodes sind u. a. folgende:

Rückgabecode Beschreibung
FEHLER _ ERFOLGREICH
Die Datei ist signiert, und die Signatur wurde überprüft.
FEHLER: _ WEITERE _ DATEN
Der pbFileHash-Parameter ist nicht NULL, und die vom parameterfileHash angegebene Größe ist nicht groß genug, um den Hash zu empfangen.
FEHLER: _ NICHT _ GENÜGEND _ ARBEITSSPEICHER
Es ist ein Speicherbelegungsfehler aufgetreten.
TRUST _ E _ BAD _ DIGEST
Die Signatur der Datei wurde nicht überprüft.
TRUST _ E _ NOSIGNATURE
Die Datei wurde nicht signiert oder hatte eine ungültige Signatur.

Requirements (Anforderungen)

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows Nur [ XP-Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows Nur Server [ 2003-Desktop-Apps]
DLL
Wintrust.dll