我不希望用户通过我的 DLL 中的依赖项看到所有导出函数,有没有办法做到这一点?我用 C++ 和 MS Visual Studio 编译我的 DLL。
最佳答案
另一种选择可能是创建一个导出函数,它将返回您想要隐藏的函数的地址数组 - 一旦您拥有这些地址,您就可以直接调用它们
static void** Funcs = {&foo, &foo1, &foo2, 0};
__declspec (dllexport) void* GetFuncs (void)
{
return &Funcs;
}
在您的可执行文件中,您可以执行以下操作
void** Funcs = GetFuncs();
(*Funcs[0]) (1, 2, 3);
关于c++ - 如何在 DLL 中隐藏导出函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/848144/