Share via


Funzione ImageGetDigestStream (imagehlp.h)

Recupera i dati richiesti dal file di immagine specificato.

Sintassi

BOOL IMAGEAPI ImageGetDigestStream(
  [in] HANDLE          FileHandle,
  [in] DWORD           DigestLevel,
  [in] DIGEST_FUNCTION DigestFunction,
  [in] DIGEST_HANDLE   DigestHandle
);

Parametri

[in] FileHandle

Handle per il file di immagine. Questo handle deve essere aperto per l'accesso FILE_READ_DATA.

[in] DigestLevel

Aspetti dell'immagine da includere nel flusso di dati restituiti. Questo parametro può essere uno o più dei valori seguenti.

Valore Significato
CERT_PE_IMAGE_DIGEST_ALL_IMPORT_INFO
0x04
Includere tutte le informazioni di importazione.
CERT_PE_IMAGE_DIGEST_DEBUG_INFO
0x01
Includere informazioni di debug simbolico.
CERT_PE_IMAGE_DIGEST_RESOURCES
0x02
Includere le informazioni sulle risorse.

[in] DigestFunction

Puntatore a una routine di callback per elaborare i dati. Per altre informazioni, vedere DigestFunction.

[in] DigestHandle

Handle fornito dall'utente al digest. Questo parametro viene passato a DigestFunction come primo argomento.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è TRUE.

Se la funzione ha esito negativo, il valore restituito è FALSE. Per recuperare informazioni sull'errore estese, chiamare GetLastError.

Commenti

La funzione ImageGetDigestStream restituisce i dati da inserire da un file di immagine specificato, soggetto al parametro DigestLevel passato. L'ordine dei byte sarà coerente per chiamate diverse, che è necessario per garantire che lo stesso digest del messaggio venga sempre generato dal flusso di byte recuperato.

Per garantire la compatibilità multipiattaforma, tutte le implementazioni di questa funzione devono comportarsi in modo coerente rispetto all'ordine in cui vengono restituite le varie parti del file di immagine.

I dati devono essere restituiti nell'ordine seguente:

  1. Informazioni sull'immagine (dati eseguibili e statici).
  2. Dati delle risorse.
  3. Informazioni sul debug.
Se una di queste proprietà non viene specificata, le parti rimanenti devono essere restituite nello stesso ordine.

Tutte le funzioni ImageHlp, ad esempio questa, sono a thread singolo. Di conseguenza, le chiamate da più thread a questa funzione genereranno un comportamento imprevisto o un danneggiamento della memoria. Per evitare questo problema, è necessario sincronizzare tutte le chiamate simultanee da più thread a questa funzione.

Requisiti

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione imagehlp.h
Libreria Imagehlp.lib
DLL Imagehlp.dll

Vedi anche

Funzioni ImageHlp