Udostępnij za pośrednictwem


IDiaAddressMap::set_imageHeaders

Ustawia nagłówki obrazów w celu włączenia względnego tłumaczenia adresów wirtualnych.

Składnia

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

Parametry

Cbdata

[in] Liczba bajtów danych nagłówka. Musi zawierać n*sizeof(IMAGE_SECTION_HEADER) liczbę n nagłówków sekcji w pliku wykonywalnego.

data[]

[in] Tablica IMAGE_SECTION_HEADER struktur, które mają być używane jako nagłówki obrazu.

originalHeaders

[in] Ustaw wartość , FALSE jeśli nagłówki obrazu pochodzą z nowego obrazu, TRUE jeśli odzwierciedlają oryginalny obraz przed uaktualnieniem. Zazwyczaj jest to ustawione TRUE na wartość tylko w połączeniu z wywołaniami metody IDiaAddressMap::set_addressMap .

Wartość zwracana

Jeśli operacja powiedzie się, zwraca wartość S_OK; w przeciwnym razie zwraca kod błędu.

Uwagi

Struktura IMAGE_SECTION_HEADER jest zadeklarowana w pliku Winnt.h i reprezentuje format nagłówka sekcji obrazu pliku wykonywalnego.

Względne obliczenia adresów wirtualnych zależą od IMAGE_SECTION_HEADER wartości. Zwykle dia pobiera je z pliku bazy danych programu (.pdb). Jeśli brakuje tych wartości, dia nie może obliczyć względnych adresów wirtualnych, a metoda IDiaAddressMap::get_relativeVirtualAddressEnabled zwraca wartość FALSE. Klient musi następnie wywołać metodę IDiaAddressMap::p ut_relativeVirtualAddressEnabled , aby włączyć względne obliczenia adresów wirtualnych po podaniu brakujących nagłówków obrazu z samego obrazu.

Zobacz też