我想这样发布程序(用动态链接库)行么?

时间:2022-01-12 22:19:49
一般,我们这样发布程序:

在prject->Options->Compiler中点击Release,  
在prject->Options->Packages中去掉Builder  with  runtime  packages选项  
在prject->Options->Linker中去掉Use  dynamic  RTL  选项  
然后,  ReBuild

我想为了减小最终程序的大小,并且更好的共享动态链接库,我这样发布程序

在prject->Options->Compiler中点击Release, 
在prject->Options->Packages中勾上Builder  with  runtime  packages选项  
在prject->Options->Linker中勾上Use  dynamic  RTL  选项  
然后,  ReBuild

应该为程序带上哪些动态链接库?放到目标机的哪个目录?

5 个解决方案

#1


gz
up!

#2


up

#3


在没有安装BCB的机器上运行,提示没有哪个DLL就加上那个,直到可以正常运行。

#4


bcb的动态连接库大多数是*.bpl格式的文件,比如vclx60.bpl是标准控件所需要的库,不同的控件集需要不同的库,把所需要的放到程序所在的目录下就行了,这种格式不需要进行注册。

#5


wangxiangsjz(王翔) 的主意不错;)(本来想偷懒问别人,现在人家指出来了,只好去试试了)

经尝试,一个基本的可视化程序(用了vcl,有form,button等)有以下文件即可:
vcl60.bpl  Borland Package Library
rtl60.bpl  Borland Package Library(版本信息中源文件名居然也是VCL60.BPL)
borlndmm.dll  Borland Memory Manager
cc3260mt.dll  Run Time Library

在加上pagecontrol,bitbutton等也是只需以上东西
呵呵,曾有人说Borland的东西生成的程序大,那是因为微软在Windows里已经放了许多自己用的到的链接库,如果我们把Borland的这些链接库也放到system32中,那么Borland的程序一样可以很小,呵呵,日积月累,我们作的程序也可以不作release build直接考去就用了;)

不过这样作到是不可靠;)哪天客户重装了系统,软件就没发用了
综合考虑作绿色软件就“全编译”,使用者固定或者希望程序小就采用使用链接库的编译;)

#1


gz
up!

#2


up

#3


在没有安装BCB的机器上运行,提示没有哪个DLL就加上那个,直到可以正常运行。

#4


bcb的动态连接库大多数是*.bpl格式的文件,比如vclx60.bpl是标准控件所需要的库,不同的控件集需要不同的库,把所需要的放到程序所在的目录下就行了,这种格式不需要进行注册。

#5


wangxiangsjz(王翔) 的主意不错;)(本来想偷懒问别人,现在人家指出来了,只好去试试了)

经尝试,一个基本的可视化程序(用了vcl,有form,button等)有以下文件即可:
vcl60.bpl  Borland Package Library
rtl60.bpl  Borland Package Library(版本信息中源文件名居然也是VCL60.BPL)
borlndmm.dll  Borland Memory Manager
cc3260mt.dll  Run Time Library

在加上pagecontrol,bitbutton等也是只需以上东西
呵呵,曾有人说Borland的东西生成的程序大,那是因为微软在Windows里已经放了许多自己用的到的链接库,如果我们把Borland的这些链接库也放到system32中,那么Borland的程序一样可以很小,呵呵,日积月累,我们作的程序也可以不作release build直接考去就用了;)

不过这样作到是不可靠;)哪天客户重装了系统,软件就没发用了
综合考虑作绿色软件就“全编译”,使用者固定或者希望程序小就采用使用链接库的编译;)