Home > Informatica, Programmazione > Come far crashare Reflector

Come far crashare Reflector

Stasera stavo smanettando con la reflection di .NET. Le potenzialità sono davvero enormi. Tra le molte funzionalità è possibile creare dinamicamente codice .NET a run-time grazie ai vari oggetti Builder e all’ILGenerator.

Dopo varie prove creo il mio primo assembly con all’interno la mia prima banalissima classe, tutto a run-time. Salvo il tutto nel file MyTestAssembly.dll. Tutto funziona alla grande! Apro per curiosità con Reflector l’assembly appena generato. Eseguo la funzione Disassemble sul mio type e fin qui tutto bene. Vedo il listato collassato della mia simpatica classe creata dinamicamente. Fin qui una figata :-D

Clicco in fine su Expand Methods, per vedere in dettaglio il sorgente dei metodi, e BAM! Per la prima volta vedo crashare Reflector! Allego l’immagine per gli increduli.

reflector_crash

Non ci posso credere, Reflector che crasha sulla mia classe creata dinamicamente! Eppure la mia classe è perfettamente conforme alle specifiche IL. Tanto più che, se così non fosse, l’AssemblyBuilder non mi avrebbe permesso il salvataggio del codice creato su file. Come tra l’altro è più volte successo quando sbagliavo qualcosa. Nei prossimi giorni indagherò sul mistero!

Riferimenti

http://msdn.microsoft.com/en-us/library/f7ykdhsy(VS.71).aspx

http://www.red-gate.com/products/reflector/

http://msdn.microsoft.com/en-us/library/system.reflection.emit.ilgenerator.aspx

Technorati Tags: ,,
Condividi: Queste icone linkano i siti di social bookmarking sui quali i lettori possono condividere e trovare nuove pagine web.
  • Digg
  • del.icio.us
  • StumbleUpon
  • Reddit
  • Webnews
  • MisterWong
  • Y!GG
  • LinkedIn
  1. Nessun commento ancora...
  1. Nessun trackback ancora...