Suppongo che la mia domanda riguardi il caricatore CLR. Voglio capire la meccanica dietro la funzionalità CorFlags.exe/32BIT+
.Come funziona CorFlags.exe/32BIT +?
Sappiamo che quando si avvia un assieme compilato con il flag Qualsiasi CPU impostato su Windows a 64 bit, viene avviato come processo a 64 bit. Se si esegue CorFlags /32BIT+
su quell'assieme, verrà avviato come processo a 32 bit. Penso che questa sia una caratteristica affascinante.
Ho tante domande su di esso:
- Come si realizza?
- È coinvolto il caricatore del sistema operativo?
- È possibile creare un'applicazione personalizzata (suppongo che non gestita) che carichi CLR a 32 o 64 bit a un desiderio?
C'è un articolo, un libro, un blog, ecc. Che spiega il funzionamento interno di questa funzione?
Grazie per la risposta rapida. Questo è un buon punto di partenza. Volevo scoprire come Clr si occupa delle sezioni .reloc. Ho scavato in sscli, principalmente in pedecoder.h/pewriter.cpp e ho trovato le mie risposte. Ancora ci sono molte domande (ad esempio cosa succede su Windows 2000 x64) ma credo che troverò le risposte in sscli. –
È facile, Windows 2000 x64 è stato visto per l'ultima volta dal grande Yeti bianco. –
Wow. Mi chiedo se ci sia un modo per trarre vantaggio da questa "consapevolezza speciale" per creare file binari corretti (codice nativo) per Windows. – Fowl