1. 程式人生 > >dll加載遇到的問題

dll加載遇到的問題

發布 安裝程序 如果 函數調用 程序 檢查 加載dll dll文件 .net

dll加載有兩種形式,分別是隱式加載和顯式加載。

隱式加載在編譯的時候就將dll文件編譯到可執行文件中去,程序發布的時候可以不用講dll帶著.缺點是,這樣編譯出來後,程序會很大。

顯式加載是指在程序運行過程中,需要用到dll裏的函數時,再動態加載dll到內存中。這種加載方式因為是在程序運行後再加載的,所以可以讓程序啟動更快,而且dll的維護更容易,使得程序如果需要更新,很多時候直接更新dll,而不用重新安裝程序.只是這種加載方式,函數調用稍微復雜一點。

我在項目中采用的是隱式加載,遇到的問題是"無法打開.lib文件"的錯誤,解決方法是檢查dll文件和lib文件放的位置。

vs2017中放在vcxproj、vcxproj.user、vcxproj.filter三個文件所在的文件夾裏面,與這三個文件放在一起後編譯錯誤被消掉。

另外使用xerces解析xml的時候,報錯的時候註意檢查“XERCES_CPP_NAMESPACE_USE”是否添加。

參考:https://blog.csdn.net/enjoy5512/article/details/51548795

dll加載遇到的問題