2012-03-05 54 views
0

我建立在Visual Studio 2010中的Visual C++ 6.0的工作區,這樣它會更新一些依賴VS2010鏈接器錯誤,尋找一個.dll文件的.LIB

我所有的文件和dll的吧正在尋找,它構建但隨後失敗,在這種錯誤

1>LINK : fatal error LNK1181: cannot open input file '\Projects\exe\CRelease/api.lib'

我有api.dll它需要建立連接,但我沒有它的的.lib文件版本。即使我做了(例如,如果我以某種方式轉換將.dll成的.lib),我不知道在哪裏把它放在一個目錄結構

我怎麼「修理」這個?

指導讚賞,謝謝

回答

1

通常api.dll會叫api.lib附帶的導入庫這是你需要鏈接到什麼。導入庫到api一個靜態編譯版本(這將也有可能被稱爲api.lib)不同 - 它更像是由DLL提供的可用功能的列表,所以通常會比相應的靜態庫要小得多。

如果你發現或得到api.lib,它其實並不重要,它生活的地方,只要它可以通過你的鏈接進行訪問。

如果您沒有找到導入庫,那麼您正在尋找明確的運行時鏈接,其中api.dll在您的代碼中顯式加載和卸載,而api的導出函數通過函數指針調用。

+0

要麼提供在'配置屬性的完整路徑'API.lib'>鏈接器>輸入 - >其他Dependencies'或提供在'配置屬性的完整路徑'CRelease'>鏈接器>通用>其他圖書館Directories',只是有'API.lib'(不'\項目\ EXE \ CRelease/API.lib')在'配置屬性 - >連接器 - >輸入 - >附加Dependencies'。 – Fraser 2012-03-05 23:58:24