VCL vs. FNC - exe size


I am using the VCL cloud pack in my current release, and I try to move to the FNC Cloud pack.

Before adding the FNC components, my exe file is 34 MB size and it only includes the components for google mail and calendar, and also microsoft mail.

Without removing the VCL components, I added the FNC components for Gmail and Microsoft, to do mail and calendar operations. The exe file increased to 44 MB. 10 megabytes of code is a lot for doing only that (I guess).

What is worse is, if I fully remove al the VCL stuff, then the exe file remainds in 44 MB. To be sure I am fully removing the VCL, I removed the folder installation from my disk, so I am sure I am not compiling any part of it.

Is it absolutely necessary to add that big size of code? Is it any set of switches to reduce it?

Thank you.

Let me add: maybe the problem is about a few RES files. For example TMSFNCCloudOAuth.res is near 10 MB in size. Is it absolutely needed? There are others but not that big.


TMS FNC Cloud Pack includes TMS FNC Core with JSON persistence, a cloud core layer with HTTPS support (includes certificates). SVG support with pre-built base64 icons. the TMSFNCCloudOAuth.res includes the certificates to support localhost https. This is done to make sure the application works out of the box without the need for additional file deployment. All the features combined with the required resources can indeed increase the size of the application.

I know. But I just need to use a few non visual components, so I don't need to add any styles and/or icons nor any other heavy thing you have in those resourse files. My application has a very wide range of features and solutions (including smpt clients Indy-based, full featured word processor, schedules, calculation shets, pdf managment, digital signatures and etc etc) in only 33 MB. I cannot add more than 10 MB more just for sending mails with GMail and Outlook.

Hello. I have to ask if there was any consideration about this point and if there are any plan to work to exclude unnecessary code and resources. Thank you very much.

We wanted to add in the out of the box solution to support HTTPS without additional hassle or file deployment or certificates so we cannot remove the resources. We could separate them for each operating system individually but it would still add around 4-5mb to your application. If you don’t want this, please comment the line which includes the resource in the TMSFNCCloudOAuth.pas unit