IDiaAddressMap::set_imageHeaders
Nastaví hlavičky obrázku tak, aby povolily relativní překlad virtuálních adres.
Syntaxe
HRESULT set_imageHeaders (
DWORD cbData,
BYTE data[],
BOOL originalHeaders
);
Parametry
Cbdata
[v] Počet bajtů dat záhlaví Musí být n*sizeof(IMAGE_SECTION_HEADER)
místo, kde n
je počet hlaviček oddílů ve spustitelném souboru.
data[]
[v] Pole IMAGE_SECTION_HEADER
struktur, které se mají použít jako záhlaví obrázků.
originalHeaders
[v] Nastavte, FALSE
jestli záhlaví obrázků pocházejí z nové image, TRUE
pokud před upgradem odrážejí původní image. Obvykle by to bylo nastaveno TRUE
pouze v kombinaci s voláními IDiaAddressMap::set_addressMap metoda.
Vrácená hodnota
V případě úspěchu vrátí hodnotu S_OK
; v opačném případě vrátí kód chyby.
Poznámky
Struktura IMAGE_SECTION_HEADER
je deklarována v winnt.h a představuje formát záhlaví oddílu obrázku spustitelného souboru.
Výpočty relativních virtuálních adres závisí na IMAGE_SECTION_HEADER
hodnotách. Dia je obvykle načte ze souboru databáze programu (.pdb). Pokud tyto hodnoty chybí, dia nemůže vypočítat relativní virtuální adresy a IDiaAddressMap::get_relativeVirtualAddressEnabled metoda vrátí FALSE
. Klient pak musí volat IDiaAddressMap::p ut_relativeVirtualAddressEnabled metoda povolit výpočty relativní virtuální adresy po poskytnutí chybějících hlaviček image ze samotné image.