C++ 如何创建一个包含_imp__;符号的import.lib?

C++ 如何创建一个包含_imp__;符号的import.lib?,c++,visual-c++,dllimport,C++,Visual C++,Dllimport,我们有一个没有导入库的外部DLL,我们有从该DLL声明函数的头文件 其中一些函数是用uu declspecdlimport声明的,其他函数不是。如果不使用该属性,我们可以通过编写一个.def文件并运行lib工具来创建导入库。但是,使用属性声明的函数(例如函数foo)需要_imp__foo 有没有一种简单的方法可以创建一个包含_imp__;符号的import.lib,最好不用为每次导出编写存根函数并生成一个伪DLL?您需要编辑.h文件并去掉声明中的_udeclspecdlimport属性。访问.h

我们有一个没有导入库的外部DLL,我们有从该DLL声明函数的头文件

其中一些函数是用uu declspecdlimport声明的,其他函数不是。如果不使用该属性,我们可以通过编写一个.def文件并运行lib工具来创建导入库。但是,使用属性声明的函数(例如函数foo)需要_imp__foo


有没有一种简单的方法可以创建一个包含_imp__;符号的import.lib,最好不用为每次导出编写存根函数并生成一个伪DLL?

您需要编辑.h文件并去掉声明中的_udeclspecdlimport属性。访问.h文件而不访问.lib文件是非常不寻常的,请与代码所有者联系以获取所需的.lib。@HansPassant,是的,这是我不想做的,因为头是由第三方提供给我们的。是的,我们也得到了.lib,但是它去掉了我们想要使用的一些未记录的符号,所以我们有自己的头文件来声明这些附加函数,并且需要一个新的.lib。。。。事实上,这比那更复杂。我不想进入不必要的细节,我确信处理这个问题的唯一方法是创建.lib。唯一的其他方法是创建一个同名的虚拟DLL项目,导出完全相同的函数。代码不重要,构建它来创建所需的.lib。