gpt4 book ai didi

visual-c++ - 阻止 .lib 中的 dllexport 函数从 DLL 导出

转载 作者:行者123 更新时间:2023-12-04 04:30:32 25 4
gpt4 key购买 nike

我有一个已编译成静态库的 axtls 库的副本。我将它链接到我正在构建的 DLL 中,并且某些 axtls 函数( _MD5_Final_MD5_Init_MD5_Update )似乎正在从我的 DLL 中导出。我试图弄清楚如何阻止这种情况发生。

我的 DLL 是用 .def 构建的没有列出任何这些函数的文件。但是,它们都被声明为 __declspec(dllexport)在 axtls 本身中,所以我怀疑这就是它们被导出的原因。

我想知道是否有办法阻止这些函数的导出,使用 .def文件或类似文件?我的 DLL 将用作公共(public) SDK 的一部分,因此公开这样的内部函数并不是特别好。

我怀疑删除 __declspec(dllexport)从 axtls 中的定义可能会解决我的问题,但如果可以避免的话,我宁愿不去修改上游代码。

最佳答案

每当您有一个静态 LIB 文件并在使用此 LIB 文件构建的 DLL 中查看它的所有导出函数时,解决方案很简单:

重新编译没有 __declspec(dllexport) 的静态 LIB 项目然后重新编译DLL项目。

使用 DEF 文件,您无法做到这一点。

关于visual-c++ - 阻止 .lib 中的 dllexport 函数从 DLL 导出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15390663/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com