在我的项目中,我需要在运行时加载DLL,之前我没有关于它们的信息。我需要能够使用LoadLibrary和GetProcAddress调用它们(装饰)名称的函数进行枚举(这是强加于我的要求)。名称可能会也可能不会被修饰,显然GetProcAddress需要装饰名称(如果有名称)。
有合理的方法吗?
我可以使用Depends和其他工具自行提取装饰名称,但这需要在运行时完成。使用像UnDecorateSymbolName这样的函数,必须有一种方法来获取我缺少的装饰名称。我试过SymEnumSymbols,但那些名字没有修饰。
请注意,我不是要求调用函数,只是在没有.DEF文件的情况下枚举DLL中的名称。我在Visual Studio 2010上,假设所有DLL都将在Visual Studio上编译。
答案 0 :(得分:2)