Reputation: 6492
While using the ildasm.exe tool for disassembling other .Net applications, I came across the following line.
program.exe has not valid CLR Header and cannot be disassembled
But when I tried to disassemble my code, it didn't show any error, and disassembled the code easily.
As a result I am curious about what is a CLR Header and what can be the advantages/disadvantages of having a valid CLR Header for your assembly?
Can anybody please answer the above questions?
I checked the msdn, but couldn't find much information on the topic.
Upvotes: 5
Views: 13753
Reputation: 245419
ILDASM.exe is meant to disassemble CLR code. If there is not a valid CLR header, it usually means that the executable was written in another language and compiled natively.
Upvotes: 8