控制台代码
using System;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello, World!");
Console.ReadKey();
}
}
}
开始→所有程序→Microsoft Visutal Studio 2012→Visual Stuio Tools→开发人员命令提示→输入:ildasm.exe,回车:
出现ILDasm的界面:
找到控制台程序文件bin\Debug下的可执行文件,拖入ILDasm界面:
ManiFest中:
.assembly extern mscorlib 加载外部核心库mscorlib。 .ver 4:0:0:0 引用外部库的版本 .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) 公匙标记,用于唯一确定程序集,实际是SHAI哈希码的低8位字节的反序。 .assembly ConsoleApplication1 编译目标是ConsoleApplication1。 .assembley只加载或编译实际运用到的程序集列表,在程序中using引用到的程序集,如果在程序中没有用到,将被.assembly忽略。 .ctor表示构造函数。 .hash algorithm 0x00008004为了安全性所使用的哈希算法 .ver 1:0:0:0 类的版本信息 .module ConsoleApplication1.exe中.module是程序集指令,指定当前的模块或程序集 .imagebase 0x00400000影像基地址 .file alignment 0x00000200文件对齐 .subsystem 0x0003 连接系统 .corflags 0x00020003运行库头文件,默认为1
主程序类:
构造函数:
Main方法: