共用方式為


IDiaAddressMap::set_imageHeaders

設定影像標頭以啟用相對虛擬位址轉譯。

語法

HRESULT set_imageHeaders ( 
   DWORD cbData,
   BYTE  data[],
   BOOL  originalHeaders
);

參數

cbData

[in] 標頭資料的位元組數目。 必須是 n*sizeof(IMAGE_SECTION_HEADER),其中 n 是可執行檔中的區段標頭數目。

data[]

[in] 要當做影像標頭使用的 IMAGE_SECTION_HEADER 結構陣列。

originalHeaders

[in] 如果映像標頭來自新映像,則設為 FALSE; 如果在升級之前反映原始映像,則設為 TRUE。 一般而言,這只會在與 IDiaAddressMap::set_addressMap 方法的呼叫結合時設為 TRUE

傳回值

如果成功,則會傳回 S_OK;否則,會傳回錯誤碼。

備註

IMAGE_SECTION_HEADER 結構是以 Winnt.h 宣告,並代表可執行檔的 image 區段標頭格式。

相對虛擬位址計算取決於 IMAGE_SECTION_HEADER 值。 通常,DIA 會從程式資料庫 (.pdb) 檔案擷取這些項目。 如果遺漏這些值,DIA 無法計算相對虛擬位址,而 IDiaAddressMap::get_relativeVirtualAddressEnabled 方法會傳回 FALSE。 然後,用戶端必須呼叫 IDiaAddressMap::p ut_relativeVirtualAddressEnabled 方法,以在提供影像本身遺漏的影像標頭之後啟用相對虛擬位址計算。

另請參閱