是否可以使用虚拟实现替换DLL但使用原始LIB文件

时间:2015-05-11 05:01:58

标签: c++ winapi dll

我们有一个使用Win32 DLL的项目,项目是使用与该DLL相关的LIB文件构建的。但作为新要求,我们被要求创建一个新的虚拟DLL,但我们必须使用原始的LIB文件。

我想知道的是这是否实用或者是否必须创建新的LIB文件。谢谢提前

2 个答案:

答案 0 :(得分:1)

完全有可能做你所描述的,虽然有点无意义。一旦你创建了虚拟DLL,就会生成一个新的导入库.lib。

只要您创建的DLL使用具有相同导出名称或序号的函数(取决于您导出函数的方式),并且具有相同接口的函数,那么您尝试的内容将起作用。

创建一个虚拟DLL以生成.lib文件是很常见的。如果DLL是由不输出.lib文件的工具创建的,则可以执行此操作。

答案 1 :(得分:0)

是的,但您必须重新使用或反向工程原始的.DEF文件,以确保使用相同的导入序号(如果有的话)。