我使用Loadlibrary
和Getprocaddress
來鏈接一些WinApis以進行運行時鏈接。正如預期的那樣,它工作正常。運行時鏈接API和「-ldllname」編譯器選項
但是對於一些Apis,我只是用-ldllname
作爲編譯選項。同樣的選項會導致一些API的鏈接器錯誤,並且需要加載dll。
這裏有沒有什麼特別的區別,就是一些特定的API需要運行時連接,其他的API可以使用-ldllname
選項?如何分類這些類型的API?
更新:我觀察什麼是API,支持UNICODE和ANSI即 這是後綴爲「W」和「A」的API,得到了靜態 聯自籌解決?我對麼?糾正我,如果我錯了!
爲什麼一些API需要運行時鏈接和其他解決與靜態 鏈接自己(-l選項)?有什麼理由呢?
在編譯器選項中是否指定了庫存在的目錄?你會得到什麼錯誤? – Rohan 2012-08-16 08:34:03
是的,我指定了庫路徑。這隻發生在一些API和其他-l選項工作正常。 – 2vision2 2012-08-16 08:36:27