就第一个,怎么生成可执行文件?

解决方案 »

  1.   

    你要是能写出编译器来。
    还上这来问什么。
    要是有人会写编译器,早去MS或者Borland了。
      

  2.   

    楼是滴同志……说话可要……虽然BBS里面不需要怎么负责,但是……为自己着想点吧
    其实楼主的意思应该是根据PE文件的结构自己去用程序构建一个PE格式的可执行文件。
    这其实没什么不可以,其实跟修改PE文件的病毒的原理那样去做就行了。
      

  3.   

    呵呵,Delphi就能生成PE文件。
      

  4.   

    To unsigned(僵哥) :
    可能我说的是有些过分了。
    但是楼主是要写一个编译器啊,“怎么做一个编译器根据代码生成可执行pe文件?”
    那请问楼主说的“根据代码”是什么意思?
      

  5.   

    最简单的办法就是在程序中调用Borland的命令行编译器,如C++的编译器是bcc.exe。要写一个真正的编译器是困难的,我写了个虚拟机,可以编译结构化的脚本语言:
    http://www.bluespace.com.cn/koodoo当然是面向特点的行业应用。
      

  6.   

    bluesen(善哉) 老兄你的编译器可有Script Debug?我以前研究过写一个这样的函数,结果失败了!PE 文件格式我也同样希望学习,将来自己制作一个 安装程序制作工具。嘻嘻
      

  7.   

    to  Rural_Boy(农村的男孩) : 编译器只是报告语法错误或警告,集成开发平台提供了对脚本单步执行和断点调试的手段。
      

  8.   

    安装程序制作工具生成的EXE不是编译出来的
      

  9.   

    delphi就是自己写出来的,"Borland的命令行编译器"在哪个位置,不知道有没有源码?
    我这里代码=源程序
    一些加壳软件也是直接生成pe文件.
    做编译器的第一步就是怎么生成可执行文件
    好象"易语言"是国人开发的
      

  10.   

    呵呵,你怎么琢磨出来的啊...做编译器的第一步怎么会是生成PE格式的可执行文件呢?我们一般所说的编译器只是生成obj文件而已,链接生成PE格式的可执行文件是链接器的工作.做编译器的第一步是词法分析,当然一些比较简单的编译器把词法语法分析合起来实现.这部分有两个很好用的工具,Yacc/Lex,做过编译器的人都知道.利用它们你可以很容易的完成一个语言的词法语法分析部分.这部分属于写编译器上的"体力活".作为一个优秀的编译器来说,最难的部分实际上在代码优化上,这才是体现差距的关键所在.而生成obj文件其实也已经到了最后一步,目标代码生成.上面说的加壳什么的和这完全两码事
      

  11.   

    都先不管,先完成从机器码到目标文件的转化。
    即怎么把dcu文件转成obj文件?
      

  12.   

    >>都先不管,先完成从机器码到目标文件的转化。
    目标文件里就是机器码>>即怎么把dcu文件转成obj文件?
    Project Options->Linker->Linker Output
      

  13.   

    我知道机器码没有link之前地址不是固定的。
    有高手能编程把dcu文件转成obj文件吗?
      

  14.   

    这个问题帽子好大啊!~建议看看书先!~dcu转obj不知道,不够delphi可以直接生成obj