共用方式為


CheckSumMappedFile 函式 (imagehlp.h)

計算指定之圖像檔總和檢查碼。

語法

PIMAGE_NT_HEADERS IMAGEAPI CheckSumMappedFile(
  [in]  PVOID  BaseAddress,
  [in]  DWORD  FileLength,
  [out] PDWORD HeaderSum,
  [out] PDWORD CheckSum
);

參數

[in] BaseAddress

對應檔案的基位址。 呼叫 MapViewOfFile 函式即可取得此值。

[in] FileLength

檔案的大小,以位元組為單位。

[out] HeaderSum

從圖像檔接收原始總和檢查碼的變數指標,如果發生錯誤,則為零。

[out] CheckSum

接收計算總和檢查碼之變數的指標。

傳回值

如果函式成功,則傳回值是對應影像中所包含 之IMAGE_NT_HEADERS 結構的指標。

如果函式失敗,則傳回值為 NULL。 若要擷取擴充的錯誤資訊,請呼叫 GetLastError

備註

CheckSumMappedFile 函式會計算檔案的新總和檢查碼,並在 CheckSum 參數中傳回它。 建立或修改可執行映像的任何應用程式會使用此函式。 核心模式驅動程式和某些系統 DLL 需要總和檢查碼。 如果您使用適當的連結器參數,連結器會在鏈接時間計算原始總和檢查碼。 如需詳細資訊,請參閱鏈接器檔。

建議所有映像都有有效的總和檢查碼。 呼叫端必須負責將新計算總和檢查碼放入對應的映像,並更新檔案的磁碟上映像。

所有 ImageHlp 函式,例如此函式都是單個線程。 因此,從多個線程呼叫此函式可能會導致非預期的行為或記憶體損毀。 若要避免這種情況,您必須將所有並行呼叫從多個線程同步處理到此函式。

規格需求

需求
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限傳統型應用程式]
目標平台 Windows
標頭 imagehlp.h
程式庫 Imagehlp.lib
Dll Imagehlp.dll

另請參閱

IMAGE_NT_HEADERS

ImageHlp 函式

MapFileAndCheckSum

MapViewOfFile