2012-03-08 72 views

回答

3

RVA是相對虛擬地址,即與首選基地址的距離。首選的基地址在PE頭中聲明,並且是可執行程序加載到內存中時,圖像在內存中的首選虛擬地址。

文件偏移量是您必須從PE文件的開頭讀取併到達文件某處的字節數。所以,如果你有一個部分,你可以在部分頭文件中找到兩個部分:部分的RVA和文件中的偏移量;您還可以找到兩種尺寸,一種是一旦加載一節就會得到多少虛擬內存,另一種僅僅指示PE文件中節數據的大小。

PE內的許多參考文獻都以RVAs的形式給出。在這種情況下,您需要檢查所有節標題(或具有某種映射)以獲取引用的PE文件中的偏移量。

+0

是否有其他方式將rva轉換爲偏移量? – user1232138 2012-03-08 09:33:32

+0

相對虛擬地址和虛擬地址有什麼區別? – user1232138 2012-03-08 09:50:51

+0

爲了將rva轉換爲偏移量,您必須使用rva手頭瀏覽節標題,直到找到由「virtual_address」和「virtual_size」字段給出的rva範圍包含rva的節。 – dsign 2012-03-08 11:49:12