: : : hi,
: : :
: : : i'm builing my delphi application with run-time packages. i know i'm using RTL and VCL but how do i know what else does my program need? cuz my exe jumped from 36KB to 150KB yesterday and i don't know what i added. Is there a way to find which unit in which package is included?
: : :
: : : thanks a lot
: : :
: : Sound like you added one ore more custom images to your form. These will be stored as resources within the executable. As for the units, make a list of all the "uses"-statements in your program.
: i found that one of my new units wasn't included in my package and the complier built it into the EXE. so the problem is solved, but i still don't know how to find the package name which is holding the units.
: i never tried this but can i compile my program that only the BPL file is available and i delete all the units that i built into it? will that find the units inside the package? and what about if i have 2 packages containing 2 different but same named units? Which will be the one the compiler chooses?
The help files contain a list under "Deciding which runtime packages to use" (based on D5).
You can move all the units into a package and compile your program to use that package. The program will then be about 16 kB in size: the minimum for the package loading routines. The BPL file must be in one of the paths used by DLLs. See LoadLibrary() for which paths are searched.
If you link the packages statically, the compiler will give an error: duplicate unit names". Dynamically loaded packages (using LoadPackage) will use the unit, which is loaded first. The second loaded package will generate an error.