开发者

Compile Delphi component package (bpl) for different Delphi versions

The situation is the following. Typically I use RAD Studio 2010 for Delphi development. I have some components I would like to redistribute in binary form (*.bpl without source). But I would like people to be able to use them despite of their Delphi version. But, for example, dcu files can be used only by compiler version, which generated them. Almost the same situation is with bpl files as I know. Every bpl file will require corresponding VCLXX.bpl library depending on Delphi version. How do I make my bpls, compiled in 2010 to be able to be used in Delphi7, 2007 etc?

Is the only solution to 开发者_开发技巧have ALL Delphi versions installed and compile bpl files separately in each?


Yes, that's the only solution. Each compiler produces DCUs and BPLs specific to it's own version. The only exception I'm aware of is that Delphi 2006 and 2007 share the same format.


To distribute compiled code that can be used by multiple compiler versions, distribute an ordinary DLL, not a BPL. Packages and units are version-specific.

Create standalone functions that you export in the C style, or create COM objects that get registered with the OS.

It doesn't have to change your entire development strategy, though; it could be a DLL that uses the BPL, so you can keep all the work you've already put into the package.


You could create an obj file in c++ builder and link that in Delphi, distribute a small pas file (header). The c++ builder obj format hasn'tchanged from delphi 7 to 2009 (I can confirm 2010 but I think it will be the same as well).

You would need to test though if this would be possible for visual/designtime components.


I can create an installer that get the the installed Delphi versions on machine. Choose for witch Delphi you want to create de bpl and call the correspondent Dcc by command line to generate the correspondents bpl and install in Delphi. You can look in JVCL installer to get as example.

Att.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜