Board index » delphi » dynamic "uses"
timothy2...@my-deja.com
![]() Delphi Developer |
Fri, 25 Apr 2003 03:00:00 GMT
|
timothy2...@my-deja.com
![]() Delphi Developer |
Fri, 25 Apr 2003 03:00:00 GMT
dynamic "uses"
hello,
does someone know who I can implement dynamic "uses", without DLL's. I have a .pas-file with plenty of functions in it. Now I want to split So I wonder if someone knows how I can use the "uses" method dynamic? Thanks, Timothy Verhamme Sent via Deja.com http://www.deja.com/ |
M.H. Avegaar
![]() Delphi Developer |
Fri, 25 Apr 2003 03:00:00 GMT
Re:dynamic "uses"The linker will automatically remove unused procedures. So there is no need to split your unit into several parts, because the result won't be smaller. There are several other methods to make files smaller (remove debug information, use runtime packages etc.). <timothy2...@my-deja.com> schreef in bericht Quote> hello, |
timothy2..
![]() Delphi Developer |
Fri, 25 Apr 2003 03:00:00 GMT
Re:dynamic "uses"Is the compiler of Borland Delphi 4 as intelligent? I don't think... I tested several in several ways and came to the conclusion it doesn't make any difference... He always takes all... In article <8u686d$c8...@porthos.nl.uu.net>, Quote> The linker will automatically remove unused procedures. So there is Before you buy. |
Dirk Claessen
![]() Delphi Developer |
Fri, 25 Apr 2003 03:00:00 GMT
Re:dynamic "uses"<timothy2...@my-deja.com> schreef in berichtnieuws 8u6iap$au...@nnrp1.deja.com... Quote> Is the compiler of Borland Delphi 4 as intelligent? I don't think... I non-console ) Delphi applications. If you really need lean exe's, write a console app, but then you can't have fancy forms (and many other things). Life's a choice <g> Always bear in mind that even the simplest "Hello World" app of 300Kb has a ...all this without writing _one_ line of code! -- Dirk Claessens |
Jim Andrew
![]() Delphi Developer |
Fri, 25 Apr 2003 03:00:00 GMT
Re:dynamic "uses"Hello, Try selecting the "Build with runtime packages" option from the I found this quite by accident when my exe went from 2.3MB to 1MByte after I I think once you start to do this you have to do it for all of your programs as ...Jim Quote"M.H. Avegaart" wrote: |
Sundial Service
![]() Delphi Developer |
Fri, 25 Apr 2003 03:00:00 GMT
Re:dynamic "uses"Here's the soap on THAT issue, Jim... [1] The USES clause, by itself, is 100% a "compile time" issue. It [2] The issue of how the corresponding units -- by this I mean, "the ... When you built your app with "runtime packages," Jim, your EXE shrunk to When you built the same option without packages, the 296K file was Which is better? Hey, in this world of ump{*word*249}-gigabyte disk drives Runtime packages impose a certain amount of maintenance -- in the end, The only thing you -cannot- do, Jim, is to ignore the fact that "282K of {But in a world of ump{*word*249}-megabyte disk drives at Wal-Mart .. who gives Quote>Jim Andrews wrote: |
Jim Andrew
![]() Delphi Developer |
Sat, 26 Apr 2003 16:36:32 GMT
Re:dynamic "uses"Sundial, Not sure that I agree with you that program size is no longer important. The disk Let me see if I understand. When I build with runtime packages the user then needs If this is true then the choice seems to be to distribute the smaller program and the ...Jim QuoteSundial Services wrote: |
Jim Andrew
![]() Delphi Developer |
Sat, 26 Apr 2003 03:00:00 GMT
Re:dynamic "uses"One more question on builds. I assume that, when using InstallShield, the BDE object is always required if the It still may be a trade-off as I save 1.4MByte for the original distribution by not using ...Jim |
Bj?rge S?the
![]() Delphi Developer |
Sat, 26 Apr 2003 03:00:00 GMT
Re:dynamic "uses""Jim Andrews" <j...@azdogs.com> skrev i melding news:3A07BF0F.7A00AA85@azdogs.com... Quote> Let me see if I understand. When I build with runtime packages the directory, anywhere on your path is sufficient. Quote> If this is true then the choice seems to be to distribute the smaller Quote> rather than downloading much larger programs every time. - Smaller .exe file to up / download *with* RTP - Some 1-2 sec. slower on startup *with* RTP from local HDD - More complicated client installation *with* RTP (not *very* complicated, only need to copy .bpl files) - The real benefit with RTP is when you build an app concisting of several modules (dll's), or when you are running more Delphi apps on same machine (compiled with same Delphi version, that is) - faster load & less footprint - Some of us have problems with debug functionality when compiling with RTP, I for mine have (tempoarily) given up package debugging. -- |
timothy2..
![]() Delphi Developer |
Tue, 29 Apr 2003 03:00:00 GMT
Re:dynamic "uses"Hello, now I have a file named 'functions.pas' with all my self-made functions -- so 'functions.pas' should be a redirector between the main-program I can do this, this isn't a problem, but when I use this my '.exe'- thanks, Timothy Verhamme. Sent via Deja.com http://www.deja.com/ |
Bj?rge S?the
![]() Delphi Developer |
Tue, 29 Apr 2003 03:00:00 GMT
Re:dynamic "uses"<timothy2...@my-deja.com> skrev i melding news:8ugb0v$eug$1@nnrp1.deja.com... Quote
size more than the size of the routines actually used in your application. The common problem with a unit like this is what this file has included in it's uses clause: If it's using DBTDABLES, then your .exe size will grow by some 250kb, etc... this code can't be "linked away" (a poor design, if you ask me). For units containing controls, all code that may be called as a result of some message being sent to the window, must be present. You never know what messages may be sent from other applications...this means overhead. The solution is as follows: Split the routines from your functions.pas I got the following overhead just by adding the unit (only one at a DIALOGS.PAS: 2kb ...all this without a single line of code, it could all be "linked -- |
4. Dynamic Date Exchange "DDE" Help
5. Oracle version of "dynamic cursor"?
6. Acces violation on dynamic creating Qreport "A component named QRStandardPreview already exists",
7. "Dynamic" ActiveX (kinda complicated)
9. How to initialize "Text"-Property without raising "OnChange"-event
10. How to initialize a "Text"-property without raising an "OnChange"-event