找到问题了,把Source下的DCU文件拷贝到LIB目录就行了,但是还是不明白原理,请高手解释Delphi中不同后缀文件的作用!设计库文件和运行库文件都是由那些后缀文件组成的,分发时需要携带哪些文件!

解决方案 »

  1.   

    不同的扩展名有不同的作用;包括链接文件;源程序文件等等;在DELPHI里有明确的定义;很多书的初始教材里都有说明。自己看。  设计库文件支持组件设计时的定义和属性更改,运行库组件支持程序在运行时的函数调用和解释。
       
      程序在分发时;可以选择是否将所调用的组件和函数编译到程序中;delphi会自动将所需的部分加入;如果不选择将其加入;可能会在客户计算机中需要一些扩展名为BPL【4.0以上版本】的编译文件包
      

  2.   

    那DCU(Delphi Compiled Unit)是干什么用的,难道发布应用时除了BPL还要把他也带上?如何解释上3楼的现象呢?
      

  3.   

    那DCU(Delphi Compiled Unit)是干什么用的,难道发布应用时除了BPL还要把他也带上?如何解释上3楼的现象呢?
      

  4.   

    不用带dcu.delphi是全编译的。所以发布的时候不用在加上dcu,bpl
      

  5.   

    把Source下的DCU文件拷贝到LIB目录
      

  6.   

    我还是不明白为什么要把DCU拷到系统可查找的目录,不是说发布时不需要吗?但为什么没考之前,程序运行时就还是英文,拷了就好了呢?哪位高手讲讲原理吧
      

  7.   

    这是因为设计的时候,和编译的时候根本就不是一回事儿,编译的时候,会从DCU文件里面连接代码,如果没有DCU,就会编译PAS文件,DCU还有一个搜索顺序的问题,默认的情况下,最先搜索的Lib目录吧?因此,你以前安装DEV,DEV会添加自己的目录到Search Paths中,以前安装的时候是英文的,而且以前默认的DEV的DCU不会安装到LIB目录,而你复制到LIB目录之后,你复制的文件是汉化过的,而且在LIB目录,搜索的优先级比DEV的安装目录高,因此Delphi编译的时候,连接是LIB下的DCU,这样当然是汉化的啦!
    不知道名不明白,不明白就算了,自己摸索吧。:)
      

  8.   

    这是因为设计的时候,和编译的时候根本就不是一回事儿,编译的时候,会从DCU文件里面连接代码,如果没有DCU,就会编译PAS文件,DCU还有一个搜索顺序的问题,默认的情况下,最先搜索的Lib目录吧?因此,你以前安装DEV,DEV会添加自己的目录到Search Paths中,以前安装的时候是英文的,而且以前默认的DEV的DCU不会安装到LIB目录,而你复制到LIB目录之后,你复制的文件是汉化过的,而且在LIB目录,搜索的优先级比DEV的安装目录高,因此Delphi编译的时候,连接是LIB下的DCU,这样当然是汉化的啦!
    不知道名不明白,不明白就算了,自己摸索吧。:)
      

  9.   

    这是因为设计的时候,和编译的时候根本就不是一回事儿,编译的时候,会从DCU文件里面连接代码,如果没有DCU,就会编译PAS文件,DCU还有一个搜索顺序的问题,默认的情况下,最先搜索的Lib目录吧?因此,你以前安装DEV,DEV会添加自己的目录到Search Paths中,以前安装的时候是英文的,而且以前默认的DEV的DCU不会安装到LIB目录,而你复制到LIB目录之后,你复制的文件是汉化过的,而且在LIB目录,搜索的优先级比DEV的安装目录高,因此Delphi编译的时候,连接是LIB下的DCU,这样当然是汉化的啦!
    不知道名不明白,不明白就算了,自己摸索吧。:)
      

  10.   

    Kingron(沉沦中……) ,说得非常透彻,谢谢,送分!