怎么确定函数,在内存中的地址?

解决方案 »

  1.   

    private void button1_Click(object sender, EventArgs e)
    {
        EventHandler vEventHandler = new EventHandler(button1_Click);
        IntPtr vAddress = Marshal.GetFunctionPointerForDelegate(vEventHandler);
        Text = vAddress.ToString();
    }
      

  2.   

    vAddress 会是这个函数的地址头?
      

  3.   

    取了两次分析
    { $00393A72:} MOV EAX,$00393A58
    { $00393A77:} JMP [$00393B1C] //+$000000A0{ $00393C0A:} MOV EAX,$00393BF0
    { $00393C0F:} JMP [$00393B1C] //-$000000F8EAX中估计存放的是方法的信息
    那个跳转的地址则是函数地址
      

  4.   

    取了两次分析
    { $00393A72:} MOV EAX,$00393A58
    { $00393A77:} JMP [$00393B1C] //+$000000A0{ $00393C0A:} MOV EAX,$00393BF0
    { $00393C0F:} JMP [$00393B1C] //-$000000F8EAX中估计存放的是方法的信息
    那个跳转的地址则是函数地址
    不是很懂.是什么意思.