Dela via


Varning LNK4092 för länkverktyg

delat skrivbart avsnitt "section" innehåller relokeringar; bilden kanske inte körs korrekt

Anmärkningar

Länkaren genererar den här varningen när du har ett delat avsnitt som varnar dig om ett potentiellt allvarligt problem.

Ett sätt att dela data mellan flera processer är att markera ett avsnitt som "delat". Att markera ett avsnitt som delat kan dock orsaka problem. Du har till exempel en DLL som innehåller sådana här deklarationer i ett delat dataavsnitt:

int var = 1;
int *pvar = &var;

Det går inte att lösa pvar med länkaren eftersom dess värde beror på var DLL:en läses in i minnet, så den placerar en relokeringspost i DLL:en. När DLL-filen läses in i minnet, kan adressen till var lösas och pvar tilldelas. Om en annan process läser in samma DLL men inte kan läsa in den på samma adress uppdateras omlokaliseringen för adressen var till den andra processen och den första processens adressutrymme pekar på fel adress.