Package newbie question

I want to split my app into a *.exe and a *.bpl file.

It runs fine on my PC but if I move to another machine without Delphi IDE it requires the vcl50.bpl file. I wonder if it is possible to compile an executable that requires just my *.bpl? If not, am I allowed to distribute the vcl50.bpl? Do I need anything else if I use other components?

TIA
LVL 2
__alexAsked:
Who is Participating?
 
Lee_NoverCommented:
you can add all the rtl, vcl units to your package .. it should work
and yes, you're allowed to redist the rtl/vcl packages with your app
0
 
Melih SARICAOwnerCommented:
u can put all ur bpl's in to ur exe code..

there is an obtion " build with runtime packages" when u check it ll put all ur runtime packages in it..

Ur exe size ll be bigger but it ll solve ur problem ..

Under project->Options->(from window) Packages... u ll see the cehck box
0
 
__alexAuthor Commented:
> it should work
Nope, but shot my IDE instead. Reinstalling...
0
Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
Ivanov_GCommented:

   It is useless to separate both EXE and BPL files (my opinion). If you are considered about the size of the program - now software is shipped on CDs and DVDs, so this is not important issue.

   It makes sense only if you have MANY big executables and thus you will reduce the size of all them. In this situation you can ship the *.bpl packages and build the project as described by non_zero.
0
 
__alexAuthor Commented:
If you have n different products and m different hardware you will get n times m different *.exe. If I can separate product (*.exe) from hardware (*.bpl) it's less. I will put all the hardware related stuff in a package, i.e. an abstract base class and a CreateInstance function. If everything goes fine you can combine every *.exe with every *.bpl (as long as the interface stays the same). I will not use dlls because I think OO.
0
 
BJThomsenCommented:
I think the question here is, he has some .bpl's that are his. He want's to use them as bpl's but he want's the .bpl's that come with delphi compiled into his exe.

You can do this by going to the project dialog and selecting the Packages tab. At the bottom is a checkbox 'Build with runtime Packages' make sure thats checked.

Then remove all the packages listed in the edit box you dont want separated out, leaving only your packages.
0
 
BJThomsenCommented:
You might want to think about putting the hardware code into a COM object. Then you install the correct COM object for the hardware and your exe uses the COM object to work with.
0
 
__alexAuthor Commented:
A package can only use units from other packages, that's the reason why Borland put all the system units in a package (you might want to use it within your package). -> You need the vclXX.bpl as it is (not in the *.exe).

Anyway, thanks for the input!
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.