windows - Hvorfor lægger ikke lasteren på det ønskede sted

Indlæg af Hanne Mølgaard Plasc

Problem



Det siges, at sommetider læsseren lægger exe på en adresse, der er forskellig fra den, der antages af linkeren. Hvad kan alle være tilfældet, når loader gør det ??

Bedste reference


Dybest set foregår dette i følgende situationer:



  1. Den adresse, som billedet foretrækker at blive indlæst på, er allerede optaget. For eksempel kan der være et andet billede, der allerede er indlæst der.

  2. Billedet der skal læses er blevet udarbejdet med [2] ASLR aktiveret.

  3. Det globale flag med [3] FLG\_LDR\_TOP\_DOWN er blevet indstillet, hvilket tvinger moduler til at blive indlæst i højest mulige adresse.