使用Visual Studio 2008,我有一个.H和文库的.LIB文件。 我写了一个程序,并通过项目属性引用的LIB。 它编译罚款,但它运行时,它要求要安装的DLL。 如果DLL是在同一目录作为EXE它的工作原理,但是,如果我有LIB,是不是已经意味着功能的静态链接到我的计划?

有帮助吗?

解决方案

不是所有的lib文件是静态库。有些是导入库,并有机会,这就是你的联系。

如果您lib文件比其相应的dll文件小得多,这是一个明确的信号,这是一个导入库。

其他提示

让你的程序中使用DLL需要导入库。它与.LIB扩展名的文件,就像一个静态的.lib。但它是非常小的,它只包含了由DLL导出的函数列表。该连接器需要这个,因此它可以嵌入在导入表的DLL的名称。您可以通过运行DUMPBIN.EXE看到自己/你的.EXE进口

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top