問:對於dll中的函數地址在運行前是不知道的,那在文件代碼中是如何編寫 「call 函數地址」 之類的指令的呢?html
答:雖然不知道函數的地址是什麼,可是知道函數的地址寫在哪裏。能夠[函數地址的指針]來讀取函數的地址app
好比:函數
GetStartupInfoW函數的地址不是01220100(上面藍色筆圈出的地址是小端序)url
而是01220100地址是處存放着GetStartupInfoW函數的地址 見下圖spa
如此一來,當PE裝載器把函數地址輸入IAT,代碼只要到IAT找就好了,這也說明IAT的函數地址順序是不能隨意改動的3d