小第最近想编写一个程序包含其他程序,执行时在内存中还原被包含的程序,可是小第不知如何执行内存中生产的映射文件(不在硬盘上生成文件的前提下) ,望各位老大帮一帮小第!

解决方案 »

  1.   

    你要改变内存的属性为PAGE_EXECUTE,然后在程序里定义一个标签,并且把itext段改为可写,然后用jmp 对应内存的基地址替换标签下的语句,就可以跳转到你的地址执行程序了。
      

  2.   

    如果是一个独立运行的exe,而不是一段简单的代码,我觉得有下面几个问题要解决:
    1、import function的地址,这个手工代码还不难
    2、跳转到entry point
    3、映射,就是说exe运行时的虚拟地址空间,这个怎么分配?应该在OS层面才能解决吧?