为什么delphi中只有.dcu文件也可以被调用并运行?怎么回事呢?(20分)

  • 主题发起人 主题发起人 kzjsuper
  • 开始时间 开始时间
K

kzjsuper

Unregistered / Unconfirmed
GUEST, unregistred user!
我看了别人的一个程序,发现只有一个.dcu文件,没有.pas等文件,但在代码中可以引用这个单元以及它里面得函数并可以运行,这是怎么实现的呢?
 
本来就这样。
 
生成exe文件分两步:1.编译 由 pas 生成 dcu, 2.链接 由 dcu 等生成 exe。没有 pas 文件有 dcu 文件,可以直接从第二步开始。注意,原来生成 dcu 时用的 delphi 版本必须与你现在使用的版本一致。
 
kaida 说的对.
这是为了给你,便于潜入你的软件,而且这样保密性好.
 
to kaida:那就是说,我编译以后,把.pas文件删除掉,程序照样可以运行了?
 
.pas是源程序,.dcu是编译得到的中间结果,删除他们当然不影响执行文件的运行!
 
编译以后,把.pas文件和.dcu文件删除掉,程序照样可以运行
 
系统中缺少.dcu文件又杂办呢?
 
.dcu文件是编译的中间结果,不是必须的。
你实际操作一下,有具体问题再问。
 
没有.dcu或者其版本等不对就会编译.pas生成.dcu啊!
 
我晕,你们还是先看看基本的书籍再到坛子上来吧[:(]
 
原来dcu文件就相当于VS里的dll文件啊?
 
.bpl才相当于普通的dll文件,.dcu是编译器生成的一个中间结果,可以用于连接生成可执行文件的!
 
delphi与c 或者vc 文件对照参考
.dpr.pas .cpp .hpp .c .h
.dcu .lib
.bpl .dll .dll

.dpr 相当于一个 包含 winmain 的 c .cpp 程序
delphi和c不同,没有头文件,只要你知道.dcu 里面包含了哪些变量,函数,过程,类等,都可以直接使用.不需要申明
 
dcu就是中间文件,类似C里面的obj文件,我的理解是:pas--->dcu叫compile,dcu---->exe叫link。

如果你写了代码想给别人公用但又想保密,就把dcu给他好了。
 
多人接受答案了。
 
后退
顶部