题
使用Visual Studio 2008,我有一个.H
和文库的.LIB
文件。
我写了一个程序,并通过项目属性引用的LIB。
它编译罚款,但它运行时,它要求要安装的DLL。
如果DLL是在同一目录作为EXE
它的工作原理,但是,如果我有LIB
,是不是已经意味着功能的静态链接到我的计划?
解决方案
不是所有的lib
文件是静态库。有些是导入库,并有机会,这就是你的联系。
如果您lib
文件比其相应的dll
文件小得多,这是一个明确的信号,这是一个导入库。
其他提示
让你的程序中使用DLL需要导入库。它与.LIB扩展名的文件,就像一个静态的.lib。但它是非常小的,它只包含了由DLL导出的函数列表。该连接器需要这个,因此它可以嵌入在导入表的DLL的名称。您可以通过运行DUMPBIN.EXE看到自己/你的.EXE进口
不隶属于 StackOverflow