程序是这样的:主程序需要用到三个DLL,三个DLL分别为:A.DLL:使用了很多第三方静态LIB和几个自己写的静态LIBB.DLL:使用A.DLL和一些自己写的静态LIBC.DLL 使用A.DLL和B.DLL以及一些自己写的静态LIB三个DLL都有代码,程序运行时需要动态链接这三个DLL文件。现在想把这三个DLL做成一个静态的LIB,也就是把A.DLL, B.DLL, C.DLL合并成为一个ABC.LIB供程序调用,这样编译生成的程序就可以不需要依赖任何DLL文件了。请问技术上可行吗?我已经研究了好几天也,没有实现。请高手帮忙解决,谢谢!
/FORCE:MULTIPLE就可以强制只连接一个函数。。有错误把错误代码贴上来。。
1、建立一个静态库项目,合并目标项目文件(包括资源)到本项目中,处理冲突。
2、合并dllmain, 并提供统一的初始函数和结束函数来代替dllmain。
3、处理各种冲突。