部署 – 一个大的可执行文件或许多小的DLL?

前端之家收集整理的这篇文章主要介绍了部署 – 一个大的可执行文件或许多小的DLL?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
多年来,我的应用程序已经从1MB增长到25MB,我预计它将进一步增长到40,50 MB。我不使用DLL,但把所有东西放在这个大的可执行文件中。

拥有一个大的可执行文件有一定的优势:

>在客户端安装我的应用程序真的是:复制并运行。
>升级可以轻松地压缩并发送给客户
>没有冲突的DLL的风险(客户具有EXE的版本X,但DLL的版本Y)

大EXE的最大缺点是连接时间似乎呈指数增长。

另外一个问题是代码的一部分(我们说约40%)与其他应用程序共享。再次,优点是:

>混合不正确的DLL版本没有风险
>每个开发人员都可以对通用代码进行更改,从而加快开发速度。

但是再次,这对编译时间(每个人都在PC上重新编写通用代码)和链接时间都有重大的影响。

问题Grouping DLL’s for use in Executable提到将DLL混合在一个可执行文件中的可能性,但是它似乎仍然需要您在应用程序中手动链接所有功能(使用LoadLibrary,GetProcAddress,…)。

你对可执行文件的大小,DLL的使用以及易于部署和简单/快速开发之间的最佳“平衡”有什么看法?

单个可执行文件对可维护性有很大的积极影响。调试,部署(将问题放在一边)并在现场进行诊断变得更加容易。正如你所指出的,它完全回避DLL的地狱。

最简单的解决方案是使用两种编译模式,一种用于生成一个单独的exe,另一个用于构建大量用于开发的小型DLL。

猜你在找的Windows相关文章