次の方法で共有


ImageGetDigestStream 関数 (imagehlp.h)

指定したイメージ ファイルから要求されたデータを取得します。

構文

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

パラメーター

[in] FileHandle

イメージ ファイルへのハンドル。 このハンドルは、FILE_READ_DATAアクセスのために開く必要があります。

[in] DigestLevel

返されるデータ ストリームに含めるイメージの側面。 このパラメーターには、次の 1 つ以上の値を指定できます。

意味
CERT_PE_IMAGE_DIGEST_ALL_IMPORT_INFO
0x04
すべてのインポート情報を含めます。
CERT_PE_IMAGE_DIGEST_DEBUG_INFO
0x01
シンボリック デバッグ情報を含めます。
CERT_PE_IMAGE_DIGEST_RESOURCES
0x02
リソース情報を含めます。

[in] DigestFunction

データを処理するコールバック ルーチンへのポインター。 詳細については、「 DigestFunction」を参照してください。

[in] DigestHandle

ダイジェストへのユーザー指定のハンドル。 このパラメーターは、最初の引数として DigestFunction に渡されます。

戻り値

関数が成功した場合、戻り値は TRUE になります

関数が失敗した場合、戻り値は FALSE になります。 拡張エラー情報を取得するには、 GetLastError を呼び出します。

注釈

ImageGetDigestStream 関数は、渡された DigestLevel パラメーターに従って、指定されたイメージ ファイルからダイジェストされるデータを返します。 バイトの順序は、異なる呼び出しに対して一貫しています。これは、取得したバイト ストリームから常に同じメッセージ ダイジェストが生成されるようにするために必要です。

クロスプラットフォームの互換性を確保するために、この関数のすべての実装は、イメージ ファイルのさまざまな部分が返される順序に関して一貫した方法で動作する必要があります。

データは次の順序で返される必要があります。

  1. 画像 (実行可能ファイルと静的データ) 情報。
  2. リソース データ。
  3. デバッグ情報。
これらのいずれかが指定されていない場合は、残りの部分を同じ順序で返す必要があります。

この関数など、すべての ImageHlp 関数はシングル スレッドです。 そのため、複数のスレッドからこの関数を呼び出すと、予期しない動作やメモリ破損が発生する可能性があります。 これを回避するには、複数のスレッドからのすべての同時呼び出しをこの関数に同期する必要があります。

要件

要件
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー imagehlp.h
Library Imagehlp.lib
[DLL] Imagehlp.dll

こちらもご覧ください

ImageHlp 関数